@explorins/pers-signer 1.0.11 → 1.0.16
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/browser.cjs.js +819 -981
- package/dist/browser.cjs.js.map +1 -1
- package/dist/browser.d.ts +334 -469
- package/dist/browser.esm.js +820 -967
- package/dist/browser.esm.js.map +1 -1
- package/dist/index.cjs.js +890 -973
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +597 -576
- package/dist/index.esm.js +886 -961
- package/dist/index.esm.js.map +1 -1
- package/dist/react-native.cjs.js +820 -982
- package/dist/react-native.cjs.js.map +1 -1
- package/dist/react-native.d.ts +334 -469
- package/dist/react-native.esm.js +821 -968
- package/dist/react-native.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs.js","sources":["../src/platform/HttpClient.ts","../src/platform/ConfigProvider.ts","../src/core/AuthenticationService.ts","../src/core/WalletService.ts","../src/core/SigningService.ts","../src/config/constants.ts","../src/core/PersService.ts","../src/core/KeyWallet.ts","../src/types/error-types.ts","../src/transaction/TransactionErrorHandler.ts","../src/transaction/TransactionValidator.ts","../src/transaction/TransactionSubmissionHandler.ts","../src/transaction/WebAuthnCoordinator.ts","../src/types/transaction-types.ts","../src/transaction/TransactionSigningService.ts","../src/platform/WebAuthnProvider.browser.ts","../src/platform/WebAuthnProvider.reactnative.ts","../src/sdk/PersSignerSDK.ts","../src/utils/searchParams.ts","../src/utils/searchParamDebugger.ts","../src/utils/uuid.ts","../src/utils/TenantUtils.ts","../../../node_modules/cross-fetch/dist/browser-ponyfill.js","../node_modules/@dfns/sdk/dfnsError.js","../../../node_modules/base64-js/index.js","../../../node_modules/ieee754/index.js","../../../node_modules/buffer/index.js","../node_modules/@dfns/sdk/utils/base64.js","../node_modules/@dfns/sdk/utils/authToken.js","../node_modules/@dfns/sdk/utils/fetch.js","../node_modules/@dfns/sdk/baseAuthApi.js","../node_modules/@dfns/sdk/generated/auth/types.js","../node_modules/@dfns/sdk/utils/userActionFetch.js","../node_modules/@dfns/sdk/utils/url.js","../node_modules/@dfns/sdk/generated/auth/client.js","../node_modules/@dfns/sdk/generated/auth/delegatedClient.js","../node_modules/@dfns/sdk/generated/auth/index.js","../node_modules/@dfns/sdk/generated/exchanges/types.js","../node_modules/@dfns/sdk/generated/exchanges/client.js","../node_modules/@dfns/sdk/generated/exchanges/delegatedClient.js","../node_modules/@dfns/sdk/generated/exchanges/index.js","../node_modules/@dfns/sdk/generated/feeSponsors/types.js","../node_modules/@dfns/sdk/generated/feeSponsors/client.js","../node_modules/@dfns/sdk/generated/feeSponsors/delegatedClient.js","../node_modules/@dfns/sdk/generated/feeSponsors/index.js","../node_modules/@dfns/sdk/generated/keys/types.js","../node_modules/@dfns/sdk/generated/keys/client.js","../node_modules/@dfns/sdk/generated/keys/delegatedClient.js","../node_modules/@dfns/sdk/generated/keys/index.js","../node_modules/@dfns/sdk/generated/networks/types.js","../node_modules/@dfns/sdk/generated/networks/client.js","../node_modules/@dfns/sdk/generated/networks/delegatedClient.js","../node_modules/@dfns/sdk/generated/networks/index.js","../node_modules/@dfns/sdk/generated/permissions/types.js","../node_modules/@dfns/sdk/generated/permissions/client.js","../node_modules/@dfns/sdk/generated/permissions/delegatedClient.js","../node_modules/@dfns/sdk/generated/permissions/index.js","../node_modules/@dfns/sdk/generated/policies/types.js","../node_modules/@dfns/sdk/generated/policies/client.js","../node_modules/@dfns/sdk/generated/policies/delegatedClient.js","../node_modules/@dfns/sdk/generated/policies/index.js","../node_modules/@dfns/sdk/generated/signers/types.js","../node_modules/@dfns/sdk/generated/signers/client.js","../node_modules/@dfns/sdk/generated/signers/delegatedClient.js","../node_modules/@dfns/sdk/generated/signers/index.js","../node_modules/@dfns/sdk/generated/staking/types.js","../node_modules/@dfns/sdk/generated/staking/client.js","../node_modules/@dfns/sdk/generated/staking/delegatedClient.js","../node_modules/@dfns/sdk/generated/staking/index.js","../node_modules/@dfns/sdk/generated/wallets/types.js","../node_modules/@dfns/sdk/generated/wallets/client.js","../node_modules/@dfns/sdk/generated/wallets/delegatedClient.js","../node_modules/@dfns/sdk/generated/wallets/index.js","../node_modules/@dfns/sdk/generated/webhooks/types.js","../node_modules/@dfns/sdk/generated/webhooks/client.js","../node_modules/@dfns/sdk/generated/webhooks/delegatedClient.js","../node_modules/@dfns/sdk/generated/webhooks/index.js","../node_modules/@dfns/sdk/generated/swaps/types.js","../node_modules/@dfns/sdk/generated/swaps/client.js","../node_modules/@dfns/sdk/generated/swaps/delegatedClient.js","../node_modules/@dfns/sdk/generated/swaps/index.js","../node_modules/@dfns/sdk/generated/agreements/types.js","../node_modules/@dfns/sdk/generated/agreements/client.js","../node_modules/@dfns/sdk/generated/agreements/delegatedClient.js","../node_modules/@dfns/sdk/generated/agreements/index.js","../node_modules/@dfns/sdk/generated/allocations/client.js","../node_modules/@dfns/sdk/dfnsApiClient.js","../node_modules/@dfns/sdk/dfnsAuthenticator.js","../node_modules/@dfns/sdk/dfnsDelegatedApiClient.js","../node_modules/@dfns/sdk/signer.js","../node_modules/@dfns/sdk/store.js","../node_modules/@dfns/sdk/index.js","../node_modules/@dfns/sdk/utils/bigint.js","../node_modules/@dfns/sdk/utils/string.js","../node_modules/@dfns/sdk/utils/crypto.js","../node_modules/@dfns/sdk/utils/index.js","../node_modules/@dfns/sdk-browser/signers/key.js","../node_modules/@dfns/sdk-browser/signers/webauthn.js","../node_modules/@dfns/sdk-browser/index.js","../../../node_modules/react-native-passkey/lib/module/PasskeyError.js","../../../node_modules/react-native-passkey/lib/module/NativePasskey.js","../../../node_modules/react-native-passkey/lib/module/Passkey.js","../node_modules/@dfns/sdk-react-native/index.js"],"sourcesContent":["/**\r\n * Platform-agnostic HTTP client abstraction\r\n * Provides a consistent interface for HTTP requests across platforms\r\n */\r\n\r\nexport interface HttpResponse<T = any> {\r\n data: T;\r\n status: number;\r\n statusText: string;\r\n headers: Record<string, string>;\r\n}\r\n\r\nexport interface HttpRequestOptions {\r\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\r\n headers?: Record<string, string>;\r\n body?: any;\r\n timeout?: number;\r\n}\r\n\r\nexport interface HttpClient {\r\n request<T = any>(url: string, options: HttpRequestOptions): Promise<HttpResponse<T>>;\r\n get<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n post<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n put<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n delete<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n}\r\n\r\n/**\r\n * Fetch-based HTTP client for web environments\r\n */\r\nexport class FetchHttpClient implements HttpClient {\r\n private defaultHeaders: Record<string, string> = {\r\n 'content-type': 'application/json',\r\n };\r\n\r\n async request<T = any>(url: string, options: HttpRequestOptions): Promise<HttpResponse<T>> {\r\n const headers = { ...this.defaultHeaders, ...options.headers };\r\n \r\n const fetchOptions: RequestInit = {\r\n method: options.method,\r\n headers,\r\n };\r\n\r\n if (options.body && options.method !== 'GET') {\r\n fetchOptions.body = typeof options.body === 'string' \r\n ? options.body \r\n : JSON.stringify(options.body);\r\n }\r\n\r\n // Add timeout support if provided\r\n if (options.timeout) {\r\n const controller = new AbortController();\r\n fetchOptions.signal = controller.signal;\r\n setTimeout(() => controller.abort(), options.timeout);\r\n }\r\n\r\n const response = await fetch(url, fetchOptions);\r\n const data = await response.json();\r\n\r\n return {\r\n data,\r\n status: response.status,\r\n statusText: response.statusText,\r\n headers: Object.fromEntries(response.headers.entries()),\r\n };\r\n }\r\n\r\n async get<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'GET', headers });\r\n }\r\n\r\n async post<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'POST', body: data, headers });\r\n }\r\n\r\n async put<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'PUT', body: data, headers });\r\n }\r\n\r\n async delete<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'DELETE', headers });\r\n }\r\n}\r\n\r\n/**\r\n * Global HTTP client instance\r\n */\r\nlet globalHttpClient: HttpClient | null = null;\r\n\r\n/**\r\n * Set the global HTTP client\r\n */\r\nexport function setHttpClient(client: HttpClient): void {\r\n globalHttpClient = client;\r\n}\r\n\r\n/**\r\n * Get the current HTTP client\r\n */\r\nexport function getHttpClient(): HttpClient {\r\n if (!globalHttpClient) {\r\n // Auto-initialize with fetch client for web environments\r\n globalHttpClient = new FetchHttpClient();\r\n }\r\n return globalHttpClient;\r\n}","/**\r\n * Platform-agnostic configuration provider\r\n * Abstracts environment variable access for cross-platform compatibility\r\n */\r\n\r\nexport interface ServiceConfig {\r\n apiUrl: string;\r\n appId?: string;\r\n relyingParty: {\r\n id: string;\r\n name: string;\r\n origin?: string;\r\n };\r\n}\r\n\r\nexport interface ConfigProvider {\r\n getServiceConfig(): ServiceConfig;\r\n}\r\n\r\n/**\r\n * Web platform configuration provider\r\n * Uses provided configuration instead of environment variables\r\n */\r\nexport class WebConfigProvider implements ConfigProvider {\r\n constructor(private config: ServiceConfig) {}\r\n\r\n getServiceConfig(): ServiceConfig {\r\n return this.config;\r\n }\r\n}\r\n\r\n/**\r\n * React Native configuration provider\r\n * Uses process.env or custom config for React Native environments\r\n */\r\nexport class ReactNativeConfigProvider implements ConfigProvider {\r\n constructor(private config: ServiceConfig) {}\r\n\r\n getServiceConfig(): ServiceConfig {\r\n return this.config;\r\n }\r\n}\r\n\r\n/**\r\n * Static configuration provider for testing or custom setups\r\n */\r\nexport class StaticConfigProvider implements ConfigProvider {\r\n constructor(private config: ServiceConfig) {}\r\n\r\n getServiceConfig(): ServiceConfig {\r\n return this.config;\r\n }\r\n}\r\n\r\n/**\r\n * Global config provider instance\r\n */\r\nlet globalConfigProvider: ConfigProvider | null = null;\r\n\r\n/**\r\n * Set the global configuration provider\r\n */\r\nexport function setConfigProvider(provider: ConfigProvider): void {\r\n globalConfigProvider = provider;\r\n}\r\n\r\n/**\r\n * Get the current configuration provider\r\n * Requires explicit initialization with setConfigProvider\r\n */\r\nexport function getConfigProvider(): ConfigProvider {\r\n if (!globalConfigProvider) {\r\n throw new Error('Configuration provider not initialized. Call setConfigProvider() first with your configuration.');\r\n }\r\n return globalConfigProvider;\r\n}\r\n\r\n/**\r\n * Get the service configuration\r\n */\r\nexport function getServiceConfig(): ServiceConfig {\r\n return getConfigProvider().getServiceConfig();\r\n}","import { getHttpClient } from '../platform/HttpClient';\r\nimport { getServiceConfig } from '../platform/ConfigProvider';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\nimport { \r\n AuthResponse, \r\n RegistrationChallenge, \r\n RegistrationResult\r\n} from '../types/key-service-types';\r\n\r\n/**\r\n * Authentication service for user login and registration\r\n * Uses constructor-based dependency injection for WebAuthn provider\r\n */\r\nexport class AuthenticationService {\r\n private webAuthnProvider: WebAuthnProvider;\r\n\r\n constructor(webAuthnProvider: WebAuthnProvider) {\r\n this.webAuthnProvider = webAuthnProvider;\r\n }\r\n \r\n /**\r\n * Authenticate user with username\r\n * @param username - User identifier\r\n * @returns Promise resolving to authentication token\r\n */\r\n async login(username: string): Promise<string> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const response = await httpClient.post<AuthResponse>(\r\n `${config.apiUrl}/login`,\r\n {\r\n username,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n // Check if the response contains an error\r\n if (response.data.status && response.data.status >= 400) {\r\n throw new Error(response.data.message || 'Login failed');\r\n }\r\n \r\n if (!response.data.token) {\r\n throw new Error(response.data.message || 'No token received from login');\r\n }\r\n \r\n console.info(`[WebAuthn] User login successful: ${username}`);\r\n return response.data.token;\r\n } catch (error) {\r\n console.error(`[AuthenticationService] Login failed for ${username}:`, error);\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Register new user with WebAuthn credential\r\n * @param username - User identifier\r\n * @returns Promise resolving to registration result\r\n */\r\n async register(username: string): Promise<RegistrationResult> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n // Step 1: Initialize registration and get challenge\r\n const initResponse = await httpClient.post<RegistrationChallenge>(\r\n `${config.apiUrl}/register/init`,\r\n {\r\n username,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n const challenge = initResponse.data;\r\n \r\n // Check if the registration init failed\r\n if (challenge.status && challenge.status >= 400) {\r\n throw new Error(challenge.message || 'Registration initialization failed');\r\n }\r\n \r\n // Step 2: Create WebAuthn credential using the challenge\r\n \r\n const attestation = await this.webAuthnProvider.create(challenge);\r\n console.info(`[WebAuthn] Credential created successfully for user: ${username}`);\r\n \r\n // Step 3: Complete registration with signed challenge\r\n const completeResponse = await httpClient.post<RegistrationResult>(\r\n `${config.apiUrl}/register/complete`,\r\n {\r\n signedChallenge: { firstFactorCredential: attestation },\r\n temporaryAuthenticationToken: challenge.temporaryAuthenticationToken,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n const result = completeResponse.data;\r\n \r\n // Check if the registration completion failed\r\n if (result.status && result.status >= 400) {\r\n throw new Error(result.message || 'Registration completion failed');\r\n }\r\n \r\n console.info(`[AuthenticationService] Registration successful for: ${username}`);\r\n return result;\r\n } catch (error) {\r\n console.error(`[AuthenticationService] Registration failed for ${username}:`, error);\r\n throw error;\r\n }\r\n }\r\n \r\n /**\r\n * Validate authentication token (when backend supports it)\r\n * @param authToken - Token to validate\r\n * @returns Promise resolving to validation result\r\n */\r\n async validateToken(authToken: string): Promise<boolean> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const response = await httpClient.post<{ valid: boolean }>(\r\n `${config.apiUrl}/validate-token`,\r\n {\r\n authToken,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n return response.data.valid === true;\r\n } catch (error) {\r\n console.error('[AuthenticationService] Error validating token:', error);\r\n return false;\r\n }\r\n }\r\n \r\n /**\r\n * Get user information (when backend supports it)\r\n * @param authToken - Authentication token\r\n * @returns Promise resolving to user info or null\r\n */\r\n async getUser(authToken: string): Promise<{ username: string } | null> {\r\n const httpClient = getHttpClient();\r\n \r\n try {\r\n const response = await httpClient.get<{ username: string }>(\r\n `${getServiceConfig().apiUrl}/user`,\r\n {\r\n 'Authorization': `Bearer ${authToken}`\r\n }\r\n );\r\n \r\n return response.data;\r\n } catch (error) {\r\n console.error('[AuthenticationService] Error getting user:', error);\r\n return null;\r\n }\r\n }\r\n}","import { getHttpClient } from '../platform/HttpClient';\r\nimport { getServiceConfig } from '../platform/ConfigProvider';\r\n\r\n/**\r\n * Wallet management service\r\n * Handles wallet listing and management operations\r\n */\r\nexport class WalletService {\r\n \r\n /**\r\n * List all wallets for authenticated user\r\n * @param authToken - Authentication token\r\n * @returns Promise resolving to wallet list\r\n */\r\n static async listWallets(authToken: string): Promise<any> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const response = await httpClient.post<any>(\r\n `${config.apiUrl}/wallets/list`,\r\n {\r\n authToken,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n console.log('[WalletService] Raw API response:', response.data);\r\n return response.data;\r\n } catch (error) {\r\n console.error('[WalletService] Error listing wallets:', error);\r\n throw error;\r\n }\r\n }\r\n \r\n /**\r\n * Get wallet by ID (when backend supports it)\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @returns Promise resolving to wallet details\r\n */\r\n static async getWallet(authToken: string, walletId: string): Promise<any> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const response = await httpClient.post(\r\n `${config.apiUrl}/wallets/get`,\r\n {\r\n authToken,\r\n walletId,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n return response.data;\r\n } catch (error) {\r\n console.error(`[WalletService] Error getting wallet ${walletId}:`, error);\r\n throw error;\r\n }\r\n }\r\n \r\n /**\r\n * Create new wallet (when backend supports it)\r\n * @param authToken - Authentication token\r\n * @param walletConfig - Wallet configuration\r\n * @returns Promise resolving to wallet creation result\r\n */\r\n static async createWallet(authToken: string, walletConfig: any): Promise<any> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const response = await httpClient.post(\r\n `${config.apiUrl}/wallets/create`,\r\n {\r\n authToken,\r\n ...walletConfig,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n return response.data;\r\n } catch (error) {\r\n console.error('[WalletService] Error creating wallet:', error);\r\n throw error;\r\n }\r\n }\r\n}","import { getHttpClient } from '../platform/HttpClient';\r\nimport { getServiceConfig } from '../platform/ConfigProvider';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\nimport { \r\n SignResponse, \r\n SigningRequest,\r\n SigningChallenge,\r\n HashSigningRequest,\r\n TypedDataSigningRequest \r\n} from '../types/key-service-types';\r\n\r\n/**\r\n * Signing service for cryptographic operations\r\n * Handles hash signing and typed data signing with WebAuthn\r\n * Uses constructor-based dependency injection for WebAuthn provider\r\n */\r\nexport class SigningService {\r\n private webAuthnProvider: WebAuthnProvider;\r\n\r\n constructor(webAuthnProvider: WebAuthnProvider) {\r\n this.webAuthnProvider = webAuthnProvider;\r\n }\r\n \r\n /**\r\n * Sign a hash using the specified wallet\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param hash - Hash to sign\r\n * @returns Promise resolving to signature response\r\n */\r\n async signHash(\r\n authToken: string,\r\n walletId: string,\r\n hash: string\r\n ): Promise<SignResponse> {\r\n const request: HashSigningRequest = {\r\n kind: \"Hash\",\r\n hash,\r\n };\r\n return await this.signRequest(authToken, walletId, request);\r\n }\r\n\r\n /**\r\n * Sign EIP-712 typed data using the specified wallet\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param domain - EIP-712 domain\r\n * @param types - EIP-712 types definition\r\n * @param value - Data to sign\r\n * @returns Promise resolving to signature response\r\n */\r\n async signTypedData(\r\n authToken: string,\r\n walletId: string,\r\n domain: any,\r\n types: Record<string, any[]>,\r\n value: Record<string, any>\r\n ): Promise<SignResponse> {\r\n const request: TypedDataSigningRequest = {\r\n blockchainKind: \"Evm\",\r\n kind: \"Eip712\",\r\n types,\r\n domain,\r\n message: value\r\n };\r\n return await this.signRequest(authToken, walletId, request);\r\n }\r\n\r\n /**\r\n * Generic signing method that handles the complete signing flow\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param request - Signing request object\r\n * @returns Promise resolving to signature response\r\n */\r\n private async signRequest(\r\n authToken: string,\r\n walletId: string,\r\n request: SigningRequest\r\n ): Promise<SignResponse> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n // Step 1: Initialize signing and get challenge\r\n const initResponse = await httpClient.post<SigningChallenge>(\r\n `${config.apiUrl}/wallets/signatures/init`,\r\n {\r\n authToken,\r\n walletId,\r\n request,\r\n appId: config.appId,\r\n }\r\n );\r\n \r\n const { requestBody, challenge } = initResponse.data;\r\n\r\n // Step 2: Sign the challenge using WebAuthn\r\n const assertion = await this.webAuthnProvider.sign(challenge);\r\n\r\n // Step 3: Complete signing with signed challenge\r\n const completeResponse = await httpClient.post<SignResponse>(\r\n `${config.apiUrl}/wallets/signatures/complete`,\r\n {\r\n authToken,\r\n walletId,\r\n requestBody,\r\n signedChallenge: {\r\n challengeIdentifier: challenge.challengeIdentifier,\r\n firstFactor: assertion,\r\n },\r\n appId: config.appId,\r\n }\r\n );\r\n\r\n return completeResponse.data;\r\n } catch (error) {\r\n console.error(`[SigningService] Signing failed for wallet ${walletId}:`, error);\r\n throw error;\r\n }\r\n }\r\n \r\n /**\r\n * Sign multiple requests in batch (when backend supports it)\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param requests - Array of signing requests\r\n * @returns Promise resolving to array of signature responses\r\n */\r\n async signBatch(\r\n authToken: string,\r\n walletId: string,\r\n requests: SigningRequest[]\r\n ): Promise<SignResponse[]> {\r\n // For now, process sequentially. Could be optimized for parallel processing\r\n const results: SignResponse[] = [];\r\n \r\n for (const request of requests) {\r\n const result = await this.signRequest(authToken, walletId, request);\r\n results.push(result);\r\n }\r\n \r\n return results;\r\n }\r\n}","/**\r\n * PERS Signer SDK Constants\r\n * \r\n * These are stable configuration values for the PERS blockchain signing infrastructure.\r\n * These values should remain consistent across deployments and environments.\r\n * \r\n * Values are taken from the .env configuration to maintain consistency.\r\n */\r\n\r\nexport const SIGNER_CONFIG = {\r\n /**\r\n * Default API URL for the PERS signer backend service\r\n * This is the production endpoint that handles WebAuthn operations and transaction signing\r\n */\r\n DEFAULT_SIGNER_API_URL: 'https://signer-api.pers.ninja/v1',\r\n\r\n /**\r\n * PERS Platform API URLs\r\n */\r\n DEFAULT_PERS_API_URL: 'https://api.pers.ninja/v2',\r\n STAGING_PERS_API_URL: 'https://dev.api.pers.ninja/v2',\r\n\r\n /**\r\n * Default relying party name for WebAuthn operations\r\n * This appears in the browser's authentication prompts\r\n */\r\n DEFAULT_RELYING_PARTY_NAME: 'PERS Signer',\r\n DEFAULT_RELYING_PARTY_ID: 'signer.pers.ninja',\r\n\r\n /**\r\n * Default Ethereum provider URL for blockchain operations\r\n */\r\n DEFAULT_ETHERS_PROVIDER: 'https://sepolia.infura.io/v3/2781b4b5242343d5b0954c98f287b29e',\r\n\r\n /**\r\n * API endpoints for different operations\r\n */\r\n ENDPOINTS: {\r\n AUTH: '/auth',\r\n WALLETS: '/wallets',\r\n TRANSACTIONS: '/transactions',\r\n HEALTH: '/health',\r\n },\r\n} as const;\r\n\r\n/**\r\n * WebAuthn configuration constants\r\n */\r\nexport const WEBAUTHN_CONFIG = {\r\n /**\r\n * Timeout for WebAuthn operations (in milliseconds)\r\n */\r\n TIMEOUT: 60000,\r\n\r\n /**\r\n * User verification requirement\r\n * 'preferred' - ask for verification if available\r\n * 'required' - require verification\r\n * 'discouraged' - don't ask for verification\r\n */\r\n USER_VERIFICATION: 'preferred' as const,\r\n\r\n /**\r\n * Authenticator attachment preference\r\n */\r\n AUTHENTICATOR_ATTACHMENT: 'platform' as const,\r\n} as const;","import { SessionAuthContextResponseDTO } from '@explorins/pers-shared/browser';\r\nimport { CampaignDTO, TenantPublicDTO, TransactionFormat, TRANSACTION_FORMATS, TransactionRequestResponseDTO, TransactionSubmissionRequestDTO, CampaignClaimDTO } from '../types/pers-types';\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\n\r\n/**\r\n * Service for interacting with PERS (Phygital Experience Rewards System) backend API\r\n */\r\n\r\n\r\n/**\r\n * Configuration interface for PERS API\r\n */\r\nexport interface PersApiConfig {\r\n baseUrl: string;\r\n projectKey?: string; // Now optional, will be retrieved from tenant\r\n}\r\n\r\n/**\r\n * Get PERS API base URL with staging option\r\n * @param useStaging Whether to use staging environment URL\r\n */\r\nconst getPersApiUrl = (useStaging: boolean = false): string => {\r\n if (useStaging) {\r\n return SIGNER_CONFIG.STAGING_PERS_API_URL;\r\n }\r\n \r\n return SIGNER_CONFIG.DEFAULT_PERS_API_URL;\r\n};\r\n\r\n/**\r\n * Default PERS API configuration\r\n * Can be overridden by applications using the shared library\r\n */\r\nexport const DEFAULT_PERS_CONFIG: PersApiConfig = {\r\n baseUrl: getPersApiUrl(),\r\n // projectKey removed - will be retrieved from tenant\r\n};\r\n\r\n/**\r\n * Error response from the PERS API\r\n */\r\nexport interface PersApiError {\r\n status: number;\r\n message: string;\r\n error?: any;\r\n}\r\n\r\nexport class PersService {\r\n private static config: PersApiConfig = DEFAULT_PERS_CONFIG;\r\n private static tenantCache: Map<string, TenantPublicDTO> = new Map();\r\n private static currentProjectKey: string | null = null;\r\n private static useStaging: boolean = false;\r\n\r\n /**\r\n * Configure the PERS API settings\r\n * @param config - The configuration object\r\n */\r\n static configure(config: Partial<PersApiConfig>) {\r\n this.config = { ...this.config, ...config };\r\n }\r\n\r\n /**\r\n * Enable staging mode when project key is not available\r\n * @param enableStaging Whether to use staging environment\r\n */\r\n static setStagingMode(enableStaging: boolean) {\r\n this.useStaging = enableStaging;\r\n this.config.baseUrl = getPersApiUrl(enableStaging);\r\n }\r\n\r\n /**\r\n * Get current configuration\r\n */\r\n static getConfig(): PersApiConfig {\r\n return { \r\n ...this.config, \r\n baseUrl: getPersApiUrl(this.useStaging) \r\n };\r\n }\r\n\r\n /**\r\n * Get tenant information by tenant ID\r\n * @param tenantId - The tenant ID to retrieve\r\n * @param authToken - Optional auth token for authentication\r\n * @returns Promise with tenant public information\r\n */\r\n static async getTenantById(tenantId: string, authToken?: string): Promise<TenantPublicDTO> {\r\n // Check memory cache first\r\n const cached = this.tenantCache.get(tenantId);\r\n if (cached) {\r\n return cached;\r\n }\r\n\r\n try {\r\n const headers: Record<string, string> = {\r\n 'accept': 'application/json',\r\n 'Content-Type': 'application/json'\r\n };\r\n\r\n // Add auth token if provided\r\n if (authToken) {\r\n headers['Authorization'] = `Bearer ${authToken}`;\r\n }\r\n\r\n // Try production URL first\r\n let response = await fetch(`${getPersApiUrl(false)}/tenants/${tenantId}`, {\r\n method: 'GET',\r\n headers\r\n });\r\n\r\n // If production fails, try dev/staging URL\r\n if (!response.ok) {\r\n response = await fetch(`${getPersApiUrl(true)}/tenants/${tenantId}`, {\r\n method: 'GET',\r\n headers\r\n });\r\n \r\n if (response.ok) {\r\n // Dev succeeded - use staging mode temporarily\r\n this.setStagingMode(true);\r\n } else {\r\n // Both failed - revert to production and throw error\r\n this.setStagingMode(false);\r\n \r\n const errorData = await response.json().catch(() => ({}));\r\n throw {\r\n status: response.status,\r\n message: errorData.message || `Failed to fetch tenant ${tenantId} from both production and dev environments`,\r\n error: errorData\r\n } as PersApiError;\r\n }\r\n }\r\n\r\n const tenantData = await response.json() as TenantPublicDTO;\r\n\r\n // Cache the tenant data in memory only\r\n this.tenantCache.set(tenantId, tenantData);\r\n \r\n // Update current project key (check multiple possible property names)\r\n this.currentProjectKey = (tenantData as any).projectKey || (tenantData as any).projectApiKey || (tenantData as any).apiKey;\r\n \r\n return tenantData;\r\n } catch (error: any) {\r\n console.error('Error fetching tenant:', error);\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Initialize tenant configuration from JWT\r\n * @param tenantId - The tenant ID from JWT payload\r\n * @param authToken - Optional auth token for authentication\r\n * @returns Promise with tenant information\r\n */\r\n static async initializeTenant(tenantId: string, authToken?: string): Promise<TenantPublicDTO> {\r\n const tenantData = await this.getTenantById(tenantId, authToken);\r\n \r\n // Update service configuration with tenant's project key\r\n const projectKey = tenantData.projectApiKey;\r\n if (projectKey) {\r\n this.currentProjectKey = projectKey;\r\n }\r\n \r\n return tenantData;\r\n }\r\n\r\n /**\r\n * Get the current project key (either from tenant or fallback)\r\n * @returns The project key to use for API calls\r\n */\r\n private static getProjectKey(): string {\r\n if (this.currentProjectKey) {\r\n return this.currentProjectKey;\r\n }\r\n \r\n if (this.config.projectKey) {\r\n return this.config.projectKey;\r\n }\r\n \r\n console.error('No project key available. Current tenant cache:', Array.from(this.tenantCache.keys()));\r\n throw new Error('No project key available. Please initialize tenant or configure project key.');\r\n }\r\n\r\n /**\r\n * Clear tenant cache and reset project key\r\n */\r\n static clearTenantCache(): void {\r\n this.tenantCache.clear();\r\n this.currentProjectKey = null;\r\n }\r\n\r\n /**\r\n * Authenticates a user with the PERS backend using their auth token\r\n * \r\n * @param authToken - The authentication token received from DFNS after login/registration\r\n * @returns A promise that resolves to the authentication response\r\n * @throws If the request fails\r\n */\r\n static async authenticateUser(authToken: string): Promise<SessionAuthContextResponseDTO> {\r\n try {\r\n const projectKey = this.getProjectKey();\r\n \r\n const headers: Record<string, string> = {\r\n 'accept': 'application/json',\r\n 'x-project-key': projectKey,\r\n 'Content-Type': 'application/json'\r\n };\r\n\r\n // Try production first (unless already in staging mode)\r\n let response = await fetch(`${getPersApiUrl(this.useStaging)}/auth/token`, {\r\n method: 'POST',\r\n headers,\r\n body: JSON.stringify({ authToken })\r\n });\r\n\r\n // If production fails and we're not already in staging, try dev\r\n if (!response.ok && !this.useStaging) {\r\n console.info('[PERS] Production API unavailable, attempting staging fallback');\r\n response = await fetch(`${getPersApiUrl(true)}/auth/token`, {\r\n method: 'POST',\r\n headers,\r\n body: JSON.stringify({ authToken })\r\n });\r\n \r\n if (response.ok) {\r\n // Dev succeeded - switch to staging mode\r\n console.info('[PERS] Staging API connection successful, switching to staging mode');\r\n this.setStagingMode(true);\r\n } else {\r\n // Both failed - revert to production and throw error\r\n this.setStagingMode(false);\r\n }\r\n }\r\n\r\n const data = await response.json();\r\n\r\n if (!response.ok) {\r\n throw {\r\n status: response.status,\r\n message: data.message || 'Authentication with PERS backend failed in both environments',\r\n error: data\r\n } as PersApiError;\r\n }\r\n \r\n console.info('[PERS] User authentication successful');\r\n return data as SessionAuthContextResponseDTO;\r\n } catch (error: any) {\r\n // Rethrow a structured error\r\n throw {\r\n status: error.status || 500,\r\n message: error.message || 'Failed to authenticate with PERS backend',\r\n error\r\n } as PersApiError;\r\n }\r\n }\r\n\r\n /**\r\n * Prepares a transaction by calling the backend endpoint\r\n *\r\n * @param form - The transaction details\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @returns A promise that resolves to the transaction preparation response\r\n * @throws If the request fails\r\n */\r\n static async prepareTransaction(form: any, persAccessToken: string): Promise<TransactionRequestResponseDTO> {\r\n // ✅ UPDATED: /transaction/auth/prepare-signing → /transactions/prepare\r\n const res = await fetch(`${getPersApiUrl(this.useStaging)}/transactions`, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n 'x-project-key': this.getProjectKey(),\r\n Authorization: `Bearer ${persAccessToken}`,\r\n },\r\n body: JSON.stringify(form),\r\n });\r\n if (!res.ok) throw new Error(\"Failed to prepare transaction\");\r\n const response = await res.json();\r\n return response as TransactionRequestResponseDTO;\r\n }\r\n\r\n /**\r\n * Submits a transaction by calling the backend endpoint\r\n *\r\n * @param transactionId - The ID of the transaction to submit\r\n * @param signedTransactionOrSignature - The signed transaction data or EIP-712 signature\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @param submissionType - The transaction format type\r\n * @returns A promise that resolves to the transaction submission response\r\n * @throws If the request fails\r\n */\r\n static async submitTransaction(\r\n transactionId: string, \r\n signedTransactionOrSignature: string, \r\n persAccessToken: string,\r\n submissionType: TransactionFormat\r\n ) {\r\n // Map TransactionFormat to the backend's expected submission type\r\n const dto: TransactionSubmissionRequestDTO = {\r\n transactionId,\r\n type: submissionType,\r\n ...(submissionType === TRANSACTION_FORMATS.EIP_712\r\n ? { signature: signedTransactionOrSignature }\r\n : { signedTransaction: signedTransactionOrSignature }\r\n )\r\n };\r\n\r\n // ✅ UPDATED: /transaction/auth/submit/${transactionId} → /transactions/${transactionId}/submit\r\n const res = await fetch(`${getPersApiUrl(this.useStaging)}/transactions/submit`, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n 'x-project-key': this.getProjectKey(),\r\n Authorization: `Bearer ${persAccessToken}`,\r\n },\r\n body: JSON.stringify(dto),\r\n });\r\n if (!res.ok) throw new Error(\"Failed to submit transaction\");\r\n return await res.json();\r\n }\r\n\r\n /**\r\n * Fetches a prepared transaction for signing by transactionId\r\n * @param transactionId - The transaction ID to fetch\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @returns The prepared transaction data\r\n * @throws If the request fails\r\n */\r\n static async fetchPreparedTransaction(transactionId: string, persAccessToken: string): Promise<TransactionRequestResponseDTO> {\r\n // ✅ UPDATED: /transaction/auth/prepare-signing/${transactionId} → /transactions/${transactionId}/prepare\r\n const res = await fetch(\r\n `${getPersApiUrl(this.useStaging)}/transactions/${transactionId}/prepare`,\r\n {\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"x-project-key\": this.getProjectKey(),\r\n Authorization: `Bearer ${persAccessToken}`,\r\n },\r\n }\r\n );\r\n \r\n const response = await res.json();\r\n \r\n if (!res.ok) {\r\n // Throw structured error with the backend response\r\n throw {\r\n status: res.status,\r\n message: response.message || \"Failed to fetch prepared transaction\",\r\n error: response\r\n } as PersApiError;\r\n }\r\n \r\n return response as TransactionRequestResponseDTO;\r\n }\r\n\r\n\r\n\r\n\r\n /**\r\n * Claims a reward from the PERS blockchain system\r\n * @param rewardId - The ID of the reward to claim\r\n * @param pointsCost - The points cost for the reward\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @returns The reward claim response including reward image URL\r\n * @throws If the request fails\r\n */\r\n static async claimReward(rewardId: string, pointsCost: number, persAccessToken: string) {\r\n const res = await fetch(`${getPersApiUrl(this.useStaging)}/rewards/auth/claim`, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n 'x-project-key': this.getProjectKey(),\r\n Authorization: `Bearer ${persAccessToken}`,\r\n },\r\n body: JSON.stringify({\r\n rewardId,\r\n pointsCost\r\n }),\r\n });\r\n if (!res.ok) {\r\n const error = await res.text();\r\n throw new Error(`Failed to claim reward: ${error}`);\r\n }\r\n return await res.json();\r\n }\r\n\r\n /**\r\n * Get all active campaigns\r\n * @returns Promise with list of active campaigns\r\n */\r\n static async getActiveCampaigns(): Promise<CampaignDTO[]> {\r\n try {\r\n const response = await fetch(`${getPersApiUrl(this.useStaging)}/campaign`, {\r\n method: 'GET',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'x-project-key': this.getProjectKey()\r\n }\r\n });\r\n\r\n if (!response.ok) {\r\n const errorData = await response.json().catch(() => ({}));\r\n throw {\r\n status: response.status,\r\n message: errorData.message || 'Failed to fetch active campaigns',\r\n error: errorData\r\n } as PersApiError;\r\n }\r\n\r\n const data = await response.json();\r\n return data;\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Claims a campaign for a user\r\n * @param campaignId - The ID of the campaign to claim\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @returns Promise with the campaign claim response\r\n * @throws If the request fails\r\n */\r\n static async claimCampaign(campaignId: string, persAccessToken: string): Promise<CampaignClaimDTO> {\r\n try {\r\n const response = await fetch(`${getPersApiUrl(this.useStaging)}/campaign/auth/claim`, {\r\n method: 'POST',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'x-project-key': this.getProjectKey(),\r\n 'Authorization': `Bearer ${persAccessToken}`,\r\n 'Content-Type': 'application/json'\r\n },\r\n body: JSON.stringify({\r\n campaignId\r\n })\r\n });\r\n\r\n if (!response.ok) {\r\n const errorData = await response.json().catch(() => ({}));\r\n throw {\r\n status: response.status,\r\n message: errorData.message || 'Failed to claim campaign',\r\n error: errorData\r\n } as PersApiError;\r\n }\r\n\r\n const data = await response.json();\r\n return data;\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Gets all campaign claims for the authenticated user\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @returns Promise with list of user's campaign claims\r\n * @throws If the request fails\r\n */\r\n static async getUserCampaignClaims(persAccessToken: string): Promise<CampaignClaimDTO[]> {\r\n try {\r\n const response = await fetch(`${getPersApiUrl(this.useStaging)}/campaign/auth/claim`, {\r\n method: 'GET',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'x-project-key': this.getProjectKey(),\r\n 'Authorization': `Bearer ${persAccessToken}`\r\n }\r\n });\r\n\r\n if (!response.ok) {\r\n const errorData = await response.json().catch(() => ({}));\r\n throw {\r\n status: response.status,\r\n message: errorData.message || 'Failed to fetch user campaign claims',\r\n error: errorData\r\n } as PersApiError;\r\n }\r\n\r\n const data = await response.json();\r\n return data;\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Gets all available rewards for redemption\r\n * @returns Promise with list of available rewards that can be exchanged for points\r\n * @throws If the request fails\r\n */\r\n static async getAvailableRedemptions(): Promise<any[]> {\r\n try {\r\n const response = await fetch(`${getPersApiUrl(this.useStaging)}/redemption`, {\r\n method: 'GET',\r\n headers: {\r\n 'accept': 'application/json',\r\n 'x-project-key': this.getProjectKey()\r\n }\r\n });\r\n\r\n if (!response.ok) {\r\n const errorData = await response.json().catch(() => ({}));\r\n throw {\r\n status: response.status,\r\n message: errorData.message || 'Failed to fetch available redemptions',\r\n error: errorData\r\n } as PersApiError;\r\n }\r\n\r\n const data = await response.json();\r\n return data;\r\n } catch (error) {\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Helper method to determine if transaction data is available for signing\r\n * @param transactionResponse - Response from prepare or fetch transaction\r\n * @returns boolean indicating if transaction can be signed\r\n */\r\n static isTransactionReadyForSigning(transactionResponse: TransactionRequestResponseDTO): boolean {\r\n return transactionResponse.signingData !== null && transactionResponse.signingData !== undefined;\r\n }\r\n\r\n /**\r\n * Helper method to get transaction data from response\r\n * @param transactionResponse - Response from prepare or fetch transaction\r\n * @returns The transaction data ready for signing\r\n * @throws If transaction data is not available\r\n */\r\n static getTransactionDataForSigning(transactionResponse: TransactionRequestResponseDTO) {\r\n if (!this.isTransactionReadyForSigning(transactionResponse)) {\r\n throw new Error('Transaction data is not ready for signing');\r\n }\r\n return transactionResponse.signingData!;\r\n }\r\n}\r\n","// Custom types to avoid direct DFNS SDK dependency\r\ninterface GenerateSignatureResponse {\r\n status: 'Signed' | 'Failed' | 'Pending';\r\n signature?: {\r\n r: string;\r\n s: string;\r\n recid: number;\r\n };\r\n error?: string;\r\n}\r\n\r\nexport interface GetWalletResponse {\r\n id: string;\r\n signingKey: {\r\n publicKey: string;\r\n };\r\n // Add other wallet properties as needed\r\n}\r\n\r\nclass DfnsError extends Error {\r\n constructor(public code: number, message: string, public details?: any) {\r\n super(message);\r\n this.name = 'DfnsError';\r\n }\r\n}\r\n\r\nimport {\r\n AbstractSigner,\r\n Provider,\r\n Signature,\r\n Transaction,\r\n TransactionLike,\r\n TransactionRequest,\r\n TypedDataDomain,\r\n TypedDataField,\r\n computeAddress,\r\n getAddress,\r\n keccak256,\r\n resolveAddress,\r\n resolveProperties,\r\n toUtf8Bytes,\r\n} from \"ethers\";\r\nimport { SigningService } from \"./SigningService\";\r\nimport { \r\n AnyTransactionData, \r\n TRANSACTION_FORMATS,\r\n LegacyTransaction, \r\n EIP2930Transaction, \r\n EIP1559Transaction, \r\n EIP712TransactionData\r\n} from \"../types\";\r\n\r\ntype WalletOptions = {\r\n wallet: WalletMetadata;\r\n authToken: string;\r\n signingService: SigningService;\r\n};\r\n\r\ntype WalletMetadata = GetWalletResponse & { \r\n boundToEvmNetwork: boolean;\r\n // Add any additional wallet metadata properties\r\n};\r\n\r\nconst assertSigned = (res: GenerateSignatureResponse) => {\r\n if (res.status === \"Failed\") {\r\n throw new DfnsError(-1, \"signing failed\", res);\r\n } else if (res.status !== \"Signed\") {\r\n throw new DfnsError(\r\n -1,\r\n \"cannot complete signing synchronously because this wallet action requires policy approval\",\r\n res\r\n );\r\n }\r\n};\r\n\r\nconst combineSignature = (res: GenerateSignatureResponse): string => {\r\n if (!res.signature) {\r\n throw new DfnsError(-1, \"signature missing\", res);\r\n }\r\n\r\n const { r, s, recid } = res.signature;\r\n return Signature.from({\r\n r,\r\n s,\r\n v: recid ? 0x1c : 0x1b, // Assuming 0x1c for chain_id > 0, 0x1b otherwise. DFNS usually provides recid.\r\n }).serialized;\r\n};\r\n\r\nexport class KeyWallet extends AbstractSigner {\r\n private address?: string;\r\n private authToken: string;\r\n private metadata: WalletMetadata;\r\n private signingService: SigningService;\r\n\r\n constructor(private options: WalletOptions, provider?: Provider | null) {\r\n super(provider);\r\n this.metadata = options.wallet;\r\n this.authToken = options.authToken;\r\n this.signingService = options.signingService;\r\n }\r\n\r\n public connect(provider: Provider | null): KeyWallet {\r\n const copy = new KeyWallet(this.options, provider);\r\n copy.address = this.address;\r\n copy.metadata = this.metadata;\r\n copy.authToken = this.authToken;\r\n return copy;\r\n }\r\n\r\n public async getAddress(): Promise<string> {\r\n if (this.address) {\r\n return this.address; // Return cached address if available\r\n }\r\n // Compute and cache the address if not already available\r\n this.address = computeAddress(`0x${this.metadata.signingKey.publicKey}`);\r\n return this.address;\r\n }\r\n\r\n private async signHash(hash: string): Promise<string> {\r\n const res = await this.signingService.signHash(\r\n this.authToken,\r\n this.metadata.id,\r\n hash\r\n );\r\n assertSigned(res);\r\n return combineSignature(res);\r\n }\r\n\r\n public async signTransaction(tx: TransactionRequest): Promise<string> {\r\n // Resolve any addresses\r\n const { to, from } = await resolveProperties({\r\n to: tx.to ? resolveAddress(tx.to, this.provider) : undefined,\r\n from: tx.from ? resolveAddress(tx.from, this.provider) : undefined,\r\n });\r\n\r\n if (to != null) {\r\n tx.to = to;\r\n }\r\n if (from != null) {\r\n tx.from = from;\r\n }\r\n\r\n if (tx.from != null) {\r\n if (getAddress(<string>tx.from) !== (await this.getAddress())) {\r\n throw new Error(\"transaction from address mismatch\");\r\n }\r\n delete tx.from;\r\n }\r\n\r\n const btx = Transaction.from(<TransactionLike<string>>tx);\r\n const signature = await this.signHash(btx.unsignedHash);\r\n\r\n // Populate the signature\r\n const signedTx = Transaction.from(btx);\r\n signedTx.signature = signature;\r\n\r\n return signedTx.serialized;\r\n }\r\n\r\n public async signMessage(message: string | Uint8Array): Promise<string> {\r\n if (typeof message === \"string\") {\r\n message = toUtf8Bytes(message);\r\n }\r\n\r\n const hash = keccak256(message);\r\n return this.signHash(hash);\r\n }\r\n\r\n public async signTypedData(\r\n domain: TypedDataDomain,\r\n types: Record<string, TypedDataField[]>,\r\n value: Record<string, any>\r\n ): Promise<string> {\r\n try {\r\n // Use DFNS native EIP-712 support with correct structure\r\n const res = await this.signingService.signTypedData(\r\n this.authToken,\r\n this.metadata.id,\r\n domain,\r\n types,\r\n value\r\n );\r\n \r\n assertSigned(res);\r\n return combineSignature(res);\r\n } catch (error) {\r\n console.error('[KeyWallet] EIP-712 signing failed:', error);\r\n throw new Error(`EIP-712 signing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);\r\n }\r\n }\r\n\r\n /**\r\n * Signs a PERS transaction based on its format\r\n * Handles different transaction types: Legacy, EIP-2930, EIP-1559, and EIP-712\r\n * @param transactionData - The transaction data from PERS API\r\n * @returns The signature string\r\n */\r\n public async signPersTransaction(transactionData: AnyTransactionData): Promise<string> {\r\n switch (transactionData.format) {\r\n case TRANSACTION_FORMATS.LEGACY: {\r\n const legacyTx = transactionData as LegacyTransaction;\r\n const ethersTransaction: TransactionRequest = {\r\n to: legacyTx.to,\r\n value: legacyTx.value,\r\n data: legacyTx.data,\r\n gasLimit: legacyTx.gas,\r\n gasPrice: legacyTx.gasPrice,\r\n nonce: legacyTx.nonce,\r\n chainId: legacyTx.chainId,\r\n type: 0\r\n };\r\n return await this.signTransaction(ethersTransaction);\r\n }\r\n\r\n case TRANSACTION_FORMATS.EIP_2930: {\r\n const eip2930Tx = transactionData as EIP2930Transaction;\r\n const ethersTransaction: TransactionRequest = {\r\n to: eip2930Tx.to,\r\n value: eip2930Tx.value,\r\n data: eip2930Tx.data,\r\n gasLimit: eip2930Tx.gas,\r\n gasPrice: eip2930Tx.gasPrice,\r\n nonce: eip2930Tx.nonce,\r\n chainId: eip2930Tx.chainId,\r\n accessList: eip2930Tx.accessList,\r\n type: 1\r\n };\r\n return await this.signTransaction(ethersTransaction);\r\n }\r\n\r\n case TRANSACTION_FORMATS.EIP_1559: {\r\n const eip1559Tx = transactionData as EIP1559Transaction;\r\n const ethersTransaction: TransactionRequest = {\r\n to: eip1559Tx.to,\r\n value: eip1559Tx.value,\r\n data: eip1559Tx.data,\r\n gasLimit: eip1559Tx.gas,\r\n maxFeePerGas: eip1559Tx.maxFeePerGas,\r\n maxPriorityFeePerGas: eip1559Tx.maxPriorityFeePerGas,\r\n nonce: eip1559Tx.nonce,\r\n chainId: eip1559Tx.chainId,\r\n type: 2\r\n };\r\n return await this.signTransaction(ethersTransaction);\r\n }\r\n\r\n case TRANSACTION_FORMATS.EIP_712: {\r\n const eip712Data = transactionData as EIP712TransactionData;\r\n const typedData = eip712Data.typedData;\r\n\r\n // Sign the EIP-712 structured data with only Transaction and its dependencies\r\n // DFNS expects only the types that are actually used by the primary type\r\n const transactionTypes = {\r\n Transaction: typedData.types.Transaction\r\n };\r\n \r\n // Sign the EIP-712 structured data\r\n return await this.signTypedData(\r\n typedData.domain,\r\n transactionTypes,\r\n typedData.message\r\n );\r\n }\r\n\r\n default:\r\n throw new Error(`Unsupported transaction format: ${(transactionData as any).format}`);\r\n }\r\n }\r\n}\r\n","/**\r\n * Error codes for transaction signing operations\r\n */\r\nexport enum TransactionSigningErrorCode {\r\n INVALID_TOKENS = 'INVALID_TOKENS',\r\n TRANSACTION_NOT_FOUND = 'TRANSACTION_NOT_FOUND',\r\n TRANSACTION_NOT_PENDING = 'TRANSACTION_NOT_PENDING',\r\n WALLET_NOT_AVAILABLE = 'WALLET_NOT_AVAILABLE',\r\n WEBAUTHN_OPERATION_IN_PROGRESS = 'WEBAUTHN_OPERATION_IN_PROGRESS',\r\n SIGNING_CANCELLED = 'SIGNING_CANCELLED',\r\n PERS_AUTH_FAILED = 'PERS_AUTH_FAILED',\r\n AUTH_FAILED = 'AUTH_FAILED',\r\n TRANSACTION_NOT_READY = 'TRANSACTION_NOT_READY',\r\n SUBMISSION_FAILED = 'SUBMISSION_FAILED',\r\n SERVER_ERROR = 'SERVER_ERROR',\r\n UNKNOWN_ERROR = 'UNKNOWN_ERROR'\r\n}\r\n\r\n/**\r\n * Structured error for transaction signing operations\r\n */\r\nexport interface TransactionSigningError extends Error {\r\n code: TransactionSigningErrorCode;\r\n transactionId?: string;\r\n originalError?: unknown;\r\n}","import { TransactionStatus } from '@explorins/pers-shared/browser';\r\nimport { \r\n CombinedTransactionStatus, \r\n TransactionStatusInfo \r\n} from '../types/transaction-types';\r\nimport { \r\n TransactionSigningErrorCode, \r\n TransactionSigningError \r\n} from '../types/error-types';\r\n\r\n/**\r\n * Handles all error-related operations for transaction signing\r\n */\r\nexport class TransactionErrorHandler {\r\n \r\n /**\r\n * Get user-friendly status messages for transaction statuses\r\n * @param status - The transaction status\r\n * @returns Human-readable message explaining the status\r\n */\r\n static getStatusMessage(status: CombinedTransactionStatus): string {\r\n // Validate input parameter\r\n if (!status || typeof status !== 'string') {\r\n return 'Transaction status is unknown and cannot be processed.';\r\n }\r\n\r\n const normalizedStatus = status.toLowerCase();\r\n \r\n switch (normalizedStatus) {\r\n // PERS TransactionStatus enum values\r\n case TransactionStatus.SUCCEEDED.toLowerCase():\r\n return 'This transaction has already been completed successfully.';\r\n case TransactionStatus.PROCESSING.toLowerCase():\r\n case TransactionStatus.BROADCASTED.toLowerCase():\r\n return 'This transaction is currently being processed on the blockchain.';\r\n case TransactionStatus.FAILED.toLowerCase():\r\n return 'This transaction has failed and cannot be processed.';\r\n case TransactionStatus.PENDING_SIGNATURE.toLowerCase():\r\n case TransactionStatus.CREATED.toLowerCase():\r\n return 'This transaction is ready to be signed.';\r\n \r\n // Additional status values\r\n case TransactionStatus.CANCELLED.toLowerCase():\r\n return 'This transaction has been cancelled and cannot be signed.';\r\n case TransactionStatus.EXPIRED.toLowerCase():\r\n return 'This transaction has expired and can no longer be signed.';\r\n \r\n default:\r\n return `This transaction is in \"${status}\" state and cannot be signed at this time.`;\r\n }\r\n }\r\n\r\n /**\r\n * Safely convert string status to TransactionStatus enum\r\n * @param statusString - The status string to convert\r\n * @returns A valid TransactionStatus enum value\r\n */\r\n static parseTransactionStatus(statusString: string): CombinedTransactionStatus {\r\n // Normalize the input string to uppercase to match enum values\r\n const normalizedStatus = statusString.trim().toUpperCase();\r\n \r\n // Check if the normalized status exists in the TransactionStatus enum\r\n const enumValues = Object.values(TransactionStatus) as string[];\r\n const matchingStatus = enumValues.find(value => value.toUpperCase() === normalizedStatus);\r\n \r\n // Return the matching status or a fallback\r\n return (matchingStatus as CombinedTransactionStatus) || TransactionStatus.FAILED;\r\n }\r\n\r\n /**\r\n * Create a structured transaction signing error\r\n * @param code - Error code\r\n * @param message - Error message\r\n * @param transactionId - Optional transaction ID\r\n * @param originalError - Original error that caused this\r\n * @returns Structured error object\r\n */\r\n static createError(\r\n code: TransactionSigningErrorCode,\r\n message: string,\r\n transactionId?: string,\r\n originalError?: unknown\r\n ): TransactionSigningError {\r\n const error = new Error(message) as TransactionSigningError;\r\n error.code = code;\r\n error.transactionId = transactionId;\r\n error.originalError = originalError;\r\n return error;\r\n }\r\n\r\n /**\r\n * Create transaction status info object for UI display\r\n * @param transactionId - The transaction ID\r\n * @param status - The transaction status\r\n * @param customMessage - Optional custom message, otherwise uses default status message\r\n * @returns TransactionStatusInfo object\r\n */\r\n static createStatusInfo(\r\n transactionId: string,\r\n status: CombinedTransactionStatus,\r\n customMessage?: string\r\n ): TransactionStatusInfo {\r\n return {\r\n transactionId,\r\n transactionStatus: status,\r\n message: customMessage || this.getStatusMessage(status)\r\n };\r\n }\r\n\r\n /**\r\n * Handle TRANSACTION_NOT_PENDING error from PERS API\r\n * Consolidates the duplicate error handling logic\r\n * @param error - The error object from PERS API\r\n * @param transactionId - The transaction ID\r\n * @returns Never (always throws)\r\n * @throws Object with shouldShowStatus and statusInfo\r\n */\r\n static handleTransactionNotPendingError(\r\n error: { \r\n status?: number; \r\n error?: { code?: string; message?: string; developerMessage?: string }; \r\n code?: string; \r\n message?: string; \r\n developerMessage?: string \r\n },\r\n transactionId: string\r\n ): never {\r\n // Extract error data - could be in error.error or directly in error\r\n const errorData = error.error || error;\r\n const developerMessage = errorData.developerMessage || '';\r\n \r\n // Extract actual transaction status from the developer message\r\n const statusMatch = developerMessage.match(/has status:\\s*(\\w+)/i);\r\n const actualStatusString = statusMatch ? statusMatch[1] : 'FAILED';\r\n const actualStatus = this.parseTransactionStatus(actualStatusString);\r\n \r\n // Create status info for UI\r\n const statusInfo = this.createStatusInfo(\r\n transactionId,\r\n actualStatus,\r\n errorData.message || this.getStatusMessage(actualStatus)\r\n );\r\n \r\n // Return status info instead of storing in localStorage\r\n // Throw special error that UI can handle\r\n throw { shouldShowStatus: true, statusInfo };\r\n }\r\n\r\n /**\r\n * Process PERS API errors and handle TRANSACTION_NOT_PENDING cases\r\n * @param err - The caught error from PERS API\r\n * @param transactionId - The transaction ID\r\n * @throws Either the original error or a structured status error\r\n */\r\n static processPersApiError(err: unknown, transactionId: string): never {\r\n // Handle structured PERS error response\r\n const error = err as { \r\n status?: number; \r\n error?: { code?: string; message?: string; developerMessage?: string }; \r\n code?: string; \r\n message?: string; \r\n developerMessage?: string \r\n };\r\n \r\n // Check for TRANSACTION_NOT_PENDING error in different possible structures\r\n const isNotPendingError = \r\n (error.status && error.error && error.error.code === 'TRANSACTION_NOT_PENDING') ||\r\n (error.code === 'TRANSACTION_NOT_PENDING') ||\r\n (error.error && error.error.code === 'TRANSACTION_NOT_PENDING');\r\n \r\n if (isNotPendingError) {\r\n this.handleTransactionNotPendingError(error, transactionId);\r\n }\r\n \r\n // Handle specific HTTP status codes with user-friendly messages\r\n if (error.status) {\r\n switch (error.status) {\r\n case 404:\r\n throw this.createError(\r\n TransactionSigningErrorCode.TRANSACTION_NOT_FOUND,\r\n `Transaction ${transactionId} not found. It may have expired or been processed already.`,\r\n transactionId,\r\n err\r\n );\r\n case 500:\r\n throw this.createError(\r\n TransactionSigningErrorCode.SERVER_ERROR,\r\n `Server error while processing transaction ${transactionId}. The transaction may no longer be available or may have already been signed.`,\r\n transactionId,\r\n err\r\n );\r\n case 401:\r\n case 403:\r\n throw this.createError(\r\n TransactionSigningErrorCode.AUTH_FAILED,\r\n 'Authentication failed. Please refresh the page and try again.',\r\n transactionId,\r\n err\r\n );\r\n }\r\n }\r\n \r\n // Re-throw other errors as-is\r\n throw err;\r\n }\r\n}","import { TransactionSigningErrorCode } from '../types/error-types';\r\nimport { \r\n SigningAuthTokens, \r\n TransactionSigningParams \r\n} from '../types/transaction-types';\r\nimport { TransactionErrorHandler } from './TransactionErrorHandler';\r\n\r\n/**\r\n * Handles all validation operations for transaction signing\r\n */\r\nexport class TransactionValidator {\r\n \r\n /**\r\n * Validate transaction signing parameters\r\n * @param params - Transaction signing parameters to validate\r\n * @throws TransactionSigningError if validation fails\r\n */\r\n static validateSigningParams(params: TransactionSigningParams): void {\r\n if (!params) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Transaction signing parameters are required'\r\n );\r\n }\r\n\r\n if (!params.transactionId || typeof params.transactionId !== 'string') {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Valid transaction ID is required'\r\n );\r\n }\r\n\r\n if (!params.authTokens) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Authentication tokens are required',\r\n params.transactionId\r\n );\r\n }\r\n\r\n if (!params.authTokens.backendAuthToken || !params.authTokens.persAccessToken) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Both backend and PERS authentication tokens are required',\r\n params.transactionId\r\n );\r\n }\r\n\r\n if (!params.ethersProviderUrl || typeof params.ethersProviderUrl !== 'string') {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Ethers provider URL is required',\r\n params.transactionId\r\n );\r\n }\r\n }\r\n\r\n /**\r\n * Validate authentication tokens passed as parameters\r\n * @param authTokens - The authentication tokens to validate\r\n * @returns true if valid, throws error if invalid\r\n */\r\n static validateAuthTokens(authTokens: SigningAuthTokens): boolean {\r\n if (!authTokens.persAccessToken || !authTokens.backendAuthToken) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Both PERS access token and backend auth token are required'\r\n );\r\n }\r\n \r\n return true;\r\n }\r\n}","import { TransactionRequestResponseDTO, AnyTransactionData } from '../types/pers-types';\r\nimport { PersService } from '../core/PersService';\r\nimport { \r\n SigningAuthTokens, \r\n TransactionMetadata, \r\n SubmissionResult \r\n} from '../types/transaction-types';\r\n\r\n/**\r\n * Handles transaction submission, success flows, and redirect logic\r\n */\r\nexport class TransactionSubmissionHandler {\r\n \r\n /**\r\n * Create redirect URL with transaction parameters\r\n * @param returnUrl - Base return URL\r\n * @param transactionHash - Transaction hash to include\r\n * @param metadata - Optional metadata to include as parameters\r\n * @returns Promise resolving to the complete redirect URL\r\n */\r\n static async createRedirectUrl(\r\n returnUrl: string,\r\n transactionHash: string,\r\n metadata?: TransactionMetadata\r\n ): Promise<string> {\r\n const additionalParams: Record<string, string> = {\r\n txHash: transactionHash,\r\n success: 'true'\r\n };\r\n \r\n // Add metadata if available\r\n if (metadata) {\r\n Object.entries(metadata).forEach(([key, value]) => {\r\n // metadata is already constrained to string values by TransactionMetadata interface\r\n additionalParams[key] = value;\r\n });\r\n }\r\n \r\n // Dynamic import to avoid build issues\r\n const { createUrlWithSearchParams } = await import('../utils/searchParams');\r\n return createUrlWithSearchParams(\r\n returnUrl, \r\n ['transactionId', 'returnUrl', 'jwt', 'token'], \r\n additionalParams\r\n );\r\n }\r\n\r\n /**\r\n * Submit transaction and handle success flow\r\n * @param preparedTransaction - The prepared transaction\r\n * @param signature - The transaction signature\r\n * @param signingData - The signing data used\r\n * @param authTokens - Authentication tokens\r\n * @param transactionId - Transaction ID for tracking\r\n * @param returnUrl - Optional return URL for redirect\r\n * @param metadata - Optional metadata for redirect parameters\r\n * @returns Promise resolving to submission result\r\n */\r\n static async handleTransactionSubmission(\r\n preparedTransaction: TransactionRequestResponseDTO,\r\n signature: string,\r\n signingData: AnyTransactionData,\r\n authTokens: SigningAuthTokens,\r\n returnUrl?: string,\r\n metadata?: TransactionMetadata\r\n ): Promise<SubmissionResult> {\r\n // Submit signed transaction\r\n const submitResult = await PersService.submitTransaction(\r\n preparedTransaction.transaction.id,\r\n signature,\r\n authTokens.persAccessToken,\r\n signingData.format\r\n );\r\n \r\n // Get transaction hash for return URL or response\r\n const transactionHash = submitResult.transaction?.transactionHash || '';\r\n \r\n // Handle success - check for return URL\r\n if (returnUrl) {\r\n const redirectUrl = await this.createRedirectUrl(returnUrl, transactionHash, metadata);\r\n return { submitResult, shouldRedirect: true, redirectUrl };\r\n } else {\r\n return { submitResult, shouldRedirect: false };\r\n }\r\n }\r\n}","/**\r\n * Extended window interface for WebAuthn flags\r\n */\r\ninterface ExtendedWindow extends Window {\r\n landingAuthenticationInProgress?: boolean;\r\n webAuthnOperationInProgress?: boolean;\r\n}\r\n\r\n/**\r\n * Utility class for coordinating WebAuthn operations to prevent conflicts\r\n * Manages global state flags to ensure only one WebAuthn operation runs at a time\r\n */\r\nexport class WebAuthnCoordinator {\r\n \r\n /**\r\n * Clear the landing authentication flag\r\n * Used when starting a new transaction signing flow\r\n */\r\n static clearLandingAuthentication(): void {\r\n if (typeof window !== 'undefined') {\r\n (window as ExtendedWindow).landingAuthenticationInProgress = false;\r\n }\r\n }\r\n\r\n /**\r\n * Check if a WebAuthn operation is currently in progress\r\n * @returns True if an operation is in progress, false otherwise\r\n */\r\n static checkConcurrentOperations(): boolean {\r\n if (typeof window !== 'undefined') {\r\n return Boolean((window as ExtendedWindow).webAuthnOperationInProgress);\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * Set the WebAuthn operation in progress flag\r\n * @param inProgress - Whether an operation is in progress\r\n */\r\n static setOperationInProgress(inProgress: boolean): void {\r\n if (typeof window !== 'undefined') {\r\n (window as ExtendedWindow).webAuthnOperationInProgress = inProgress;\r\n }\r\n }\r\n}","import { TransactionStatus } from '@explorins/pers-shared/browser';\r\n\r\n/**\r\n * Combined transaction status type that includes both PERS and additional statuses\r\n */\r\nexport type CombinedTransactionStatus = TransactionStatus;\r\n\r\n/**\r\n * Transaction statuses that allow signing\r\n */\r\nexport const SIGNABLE_STATUSES = [TransactionStatus.PENDING_SIGNATURE, TransactionStatus.CREATED] as const;\r\n\r\n/**\r\n * Transaction status information for UI display\r\n */\r\nexport interface TransactionStatusInfo {\r\n transactionId: string;\r\n transactionStatus: CombinedTransactionStatus;\r\n message: string;\r\n}\r\n\r\n/**\r\n * Transaction signing result\r\n */\r\nexport interface TransactionSigningResult {\r\n success: boolean;\r\n transactionId: string;\r\n transactionHash?: string;\r\n signature?: string;\r\n error?: string;\r\n statusInfo?: TransactionStatusInfo;\r\n shouldRedirect?: boolean;\r\n redirectUrl?: string;\r\n shouldShowStatus?: boolean;\r\n}\r\n\r\n/**\r\n * Transaction result for localStorage storage\r\n */\r\nexport interface StoredTransactionResult {\r\n transactionId: string;\r\n transactionHash: string;\r\n}\r\n\r\n/**\r\n * Transaction submission result for internal processing\r\n */\r\nexport interface SubmissionResult {\r\n submitResult: import('../types/pers-types').TransactionRequestResponseDTO;\r\n shouldRedirect: boolean;\r\n redirectUrl?: string;\r\n}\r\n\r\n/**\r\n * Metadata for transaction parameters - string values only\r\n */\r\nexport interface TransactionMetadata {\r\n [key: string]: string;\r\n}\r\n\r\n/**\r\n * Authentication tokens required for transaction signing\r\n */\r\nexport interface SigningAuthTokens {\r\n backendAuthToken: string;\r\n persAccessToken: string;\r\n}\r\n\r\n/**\r\n * Transaction signing parameters\r\n */\r\nexport interface TransactionSigningParams {\r\n transactionId: string;\r\n authTokens: SigningAuthTokens;\r\n ethersProviderUrl: string;\r\n returnUrl?: string;\r\n metadata?: TransactionMetadata;\r\n // Optional wallet error state (eliminates need for localStorage)\r\n walletRegistrationFailed?: boolean;\r\n walletErrorDetails?: string;\r\n}","import { JsonRpcProvider } from 'ethers';\r\nimport { TransactionStatus } from '@explorins/pers-shared/browser';\r\nimport { TransactionRequestResponseDTO } from '../types/pers-types';\r\nimport { WalletService } from '../core/WalletService';\r\nimport { PersService } from '../core/PersService';\r\nimport { SigningService } from '../core/SigningService';\r\nimport { GetWalletResponse, KeyWallet } from '../core/KeyWallet';\r\nimport { TransactionErrorHandler } from './TransactionErrorHandler';\r\nimport { TransactionValidator } from './TransactionValidator';\r\nimport { TransactionSubmissionHandler } from './TransactionSubmissionHandler';\r\nimport { WebAuthnCoordinator } from './WebAuthnCoordinator';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\nimport { TransactionSigningErrorCode } from '../types/error-types';\r\nimport { \r\n CombinedTransactionStatus, \r\n SIGNABLE_STATUSES, \r\n TransactionStatusInfo, \r\n TransactionSigningResult, \r\n SigningAuthTokens, \r\n TransactionSigningParams \r\n} from '../types/transaction-types';\r\nimport { WalletListResponse } from '../types/key-service-types';\r\n\r\n/**\r\n * Service for orchestrating transaction signing operations\r\n * Handles the complete flow from transaction preparation to submission\r\n * Uses constructor-based dependency injection for WebAuthn provider\r\n */\r\nexport class TransactionSigningService {\r\n private webAuthnProvider: WebAuthnProvider;\r\n\r\n constructor(webAuthnProvider: WebAuthnProvider) {\r\n this.webAuthnProvider = webAuthnProvider;\r\n }\r\n\r\n /**\r\n * Prepare transaction for signing - fetch and validate\r\n */\r\n private async prepareTransaction(\r\n transactionId: string, \r\n authTokens: SigningAuthTokens\r\n ): Promise<{ preparedTransaction: TransactionRequestResponseDTO; updatedTokens: SigningAuthTokens }> {\r\n let preparedTransaction: TransactionRequestResponseDTO;\r\n try {\r\n preparedTransaction = await PersService.fetchPreparedTransaction(transactionId, authTokens.persAccessToken);\r\n } catch (err: unknown) {\r\n // Use TransactionErrorHandler to process PERS API errors\r\n // This function never returns (throws an error), so execution won't continue past this line\r\n TransactionErrorHandler.processPersApiError(err, transactionId);\r\n // The line below will never be reached due to the throw above, but TypeScript needs it for type safety\r\n throw err;\r\n }\r\n \r\n // Check transaction status - only process signable transactions\r\n const transactionStatus = preparedTransaction.transactionStatus as CombinedTransactionStatus;\r\n \r\n // Validate transaction status is signable\r\n const isSignable = SIGNABLE_STATUSES.some(status => status === transactionStatus);\r\n if (!isSignable) {\r\n // Create status info for UI using TransactionErrorHandler\r\n const statusInfo = TransactionErrorHandler.createStatusInfo(transactionId, transactionStatus);\r\n \r\n throw { shouldShowStatus: true, statusInfo };\r\n }\r\n\r\n // Authenticate with PERS using backend signer token to set up signing account\r\n let updatedPersAccessToken = authTokens.persAccessToken;\r\n try {\r\n const persSignerAuth = await PersService.authenticateUser(authTokens.backendAuthToken);\r\n \r\n // Update PERS access token with the new one that has signing account linked\r\n const newPersAccessToken = persSignerAuth.accessToken;\r\n if (newPersAccessToken) {\r\n updatedPersAccessToken = newPersAccessToken;\r\n }\r\n } catch (persSignerError: unknown) {\r\n const errorMessage = persSignerError instanceof Error ? persSignerError.message : String(persSignerError);\r\n console.error('❌ Failed to authenticate with PERS using signer token:', persSignerError);\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.PERS_AUTH_FAILED,\r\n `Failed to set up signing account: ${errorMessage}`,\r\n transactionId,\r\n persSignerError\r\n );\r\n }\r\n\r\n // If transaction is 'created' status but doesn't have signingData, fetch again with wallet-enabled token\r\n if (transactionStatus === TransactionStatus.CREATED && !PersService.isTransactionReadyForSigning(preparedTransaction)) {\r\n preparedTransaction = await PersService.fetchPreparedTransaction(transactionId, updatedPersAccessToken);\r\n }\r\n \r\n if (!PersService.isTransactionReadyForSigning(preparedTransaction)) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.TRANSACTION_NOT_READY,\r\n 'Transaction is not ready for signing',\r\n transactionId\r\n );\r\n }\r\n\r\n return { \r\n preparedTransaction, \r\n updatedTokens: { ...authTokens, persAccessToken: updatedPersAccessToken }\r\n };\r\n }\r\n\r\n /**\r\n * Validate and prepare wallet for signing\r\n */\r\n private async prepareWallet(\r\n authTokens: SigningAuthTokens, \r\n ethersProviderUrl: string\r\n ): Promise<KeyWallet> {\r\n // Wallet validation will be handled through API responses - no localStorage needed\r\n \r\n let walletData: WalletListResponse;\r\n try {\r\n walletData = await WalletService.listWallets(authTokens.backendAuthToken);\r\n console.log('[TransactionSigningService] Wallet list response:', walletData);\r\n } catch (error) {\r\n console.error('[TransactionSigningService] Wallet list API failed:', error);\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.WALLET_NOT_AVAILABLE,\r\n 'Failed to retrieve wallet information. Please refresh the page and try again.',\r\n undefined,\r\n error\r\n );\r\n }\r\n \r\n // Check both possible response structures for compatibility\r\n const wallets = walletData?.wallets || (walletData as any)?.items || [];\r\n if (!wallets?.length) {\r\n console.error('[TransactionSigningService] No wallets found in response:', walletData);\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.WALLET_NOT_AVAILABLE,\r\n 'No wallet found for transaction signing. Please refresh the page and complete account setup.'\r\n );\r\n }\r\n\r\n // Create SigningService with injected WebAuthn provider\r\n const signingService = new SigningService(this.webAuthnProvider);\r\n\r\n // Create wallet instance with provider - use unknown type for flexibility\r\n const provider = new JsonRpcProvider(ethersProviderUrl);\r\n const wallet = new KeyWallet({\r\n authToken: authTokens.backendAuthToken,\r\n wallet: wallets[0] as unknown as GetWalletResponse & { boundToEvmNetwork: boolean },\r\n signingService: signingService,\r\n }).connect(provider);\r\n\r\n return wallet;\r\n }\r\n\r\n /**\r\n * Execute the transaction signing with WebAuthn coordination\r\n */\r\n private async executeTransactionSigning(\r\n wallet: KeyWallet,\r\n preparedTransaction: TransactionRequestResponseDTO\r\n ): Promise<string> {\r\n // Check for concurrent WebAuthn operations\r\n if (WebAuthnCoordinator.checkConcurrentOperations()) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.WEBAUTHN_OPERATION_IN_PROGRESS,\r\n 'Another WebAuthn operation is in progress. Please wait and try again.'\r\n );\r\n }\r\n \r\n // Set WebAuthn operation flag for transaction signing\r\n WebAuthnCoordinator.setOperationInProgress(true);\r\n \r\n try {\r\n const signingData = PersService.getTransactionDataForSigning(preparedTransaction);\r\n const signature = await wallet.signPersTransaction(signingData);\r\n return signature;\r\n } catch (signingError: unknown) {\r\n // Handle WebAuthn-specific errors\r\n const errorMessage = signingError instanceof Error ? signingError.message : String(signingError);\r\n if (errorMessage?.includes('NotAllowedError') || \r\n errorMessage?.includes('timed out') || \r\n errorMessage?.includes('not allowed')) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.SIGNING_CANCELLED,\r\n 'Transaction signing was cancelled or timed out. Please try again and complete the biometric authentication when prompted.',\r\n undefined,\r\n signingError\r\n );\r\n }\r\n throw signingError;\r\n } finally {\r\n // Clear WebAuthn operation flag\r\n WebAuthnCoordinator.setOperationInProgress(false);\r\n }\r\n }\r\n\r\n /**\r\n * Main transaction signing orchestration method\r\n * Handles the complete flow from preparation to submission\r\n * @param params - Transaction signing parameters\r\n * @returns Promise resolving to transaction signing result\r\n * @throws TransactionSigningError for validation and operation failures\r\n */\r\n async signTransaction(\r\n params: TransactionSigningParams\r\n ): Promise<TransactionSigningResult> {\r\n // Validate input parameters first using TransactionValidator\r\n TransactionValidator.validateSigningParams(params);\r\n \r\n const { transactionId, authTokens, ethersProviderUrl, returnUrl, metadata } = params;\r\n \r\n console.info(`[TransactionSigningService] Starting signature process for ${transactionId}`);\r\n \r\n try {\r\n // Clear previous landing authentication state\r\n WebAuthnCoordinator.clearLandingAuthentication();\r\n \r\n // Step 1: Prepare transaction for signing\r\n const { preparedTransaction, updatedTokens } = await this.prepareTransaction(transactionId, authTokens);\r\n \r\n // Step 2: Prepare wallet for signing\r\n const wallet = await this.prepareWallet(updatedTokens, ethersProviderUrl);\r\n \r\n // Step 3: Execute transaction signing\r\n const signature = await this.executeTransactionSigning(wallet, preparedTransaction);\r\n const signingData = PersService.getTransactionDataForSigning(preparedTransaction);\r\n \r\n // Step 4: Submit transaction and handle success using TransactionSubmissionHandler\r\n const { submitResult, shouldRedirect, redirectUrl } = await TransactionSubmissionHandler.handleTransactionSubmission(\r\n preparedTransaction,\r\n signature,\r\n signingData,\r\n updatedTokens,\r\n returnUrl,\r\n metadata\r\n );\r\n \r\n console.info(`[TransactionSigningService] Completed successfully: ${transactionId}`);\r\n \r\n return {\r\n success: true,\r\n transactionId,\r\n transactionHash: submitResult.transaction?.transactionHash ?? undefined,\r\n signature,\r\n shouldRedirect,\r\n redirectUrl\r\n };\r\n \r\n } catch (error: unknown) {\r\n console.error(`[TransactionSigningService] Signing failed for ${transactionId}:`, error);\r\n \r\n // Handle special cases\r\n const structuredError = error as { shouldShowStatus?: boolean; statusInfo?: TransactionStatusInfo };\r\n if (structuredError.shouldShowStatus && structuredError.statusInfo) {\r\n return {\r\n success: false,\r\n transactionId,\r\n shouldShowStatus: true,\r\n statusInfo: structuredError.statusInfo,\r\n error: structuredError.statusInfo.message\r\n };\r\n }\r\n \r\n const errorMessage = error instanceof Error ? error.message : String(error);\r\n return {\r\n success: false,\r\n transactionId,\r\n error: errorMessage\r\n };\r\n }\r\n }\r\n}","/**\r\n * Browser-specific WebAuthn provider using DFNS browser SDK\r\n */\r\n\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\nimport type { WebAuthnProvider, WebAuthnConfig } from './WebAuthnProvider.types';\r\n\r\nclass DfnsBrowserWebAuthnProvider implements WebAuthnProvider {\r\n private config: WebAuthnConfig;\r\n\r\n constructor(config: WebAuthnConfig) {\r\n this.config = config;\r\n }\r\n\r\n async create(challenge: any): Promise<any> {\r\n try {\r\n const { WebAuthnSigner } = await import('@dfns/sdk-browser');\r\n const webAuthn = new WebAuthnSigner({\r\n relyingParty: this.config.relyingParty,\r\n });\r\n return await webAuthn.create(challenge);\r\n } catch (error) {\r\n console.error('Failed to load WebAuthn for browser:', error);\r\n throw new Error('WebAuthn not available in this environment');\r\n }\r\n }\r\n\r\n async sign(challenge: any): Promise<any> {\r\n try {\r\n const { WebAuthnSigner } = await import('@dfns/sdk-browser');\r\n const webAuthn = new WebAuthnSigner({\r\n relyingParty: this.config.relyingParty,\r\n });\r\n return await webAuthn.sign(challenge);\r\n } catch (error) {\r\n console.error('Failed to sign with WebAuthn for browser:', error);\r\n throw new Error('WebAuthn signing failed');\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Get WebAuthn provider for browser environments\r\n */\r\nexport async function getBrowserWebAuthnProvider(): Promise<WebAuthnProvider> {\r\n const config: WebAuthnConfig = {\r\n relyingParty: {\r\n id: typeof window !== 'undefined' ? window.location.hostname : SIGNER_CONFIG.DEFAULT_RELYING_PARTY_ID,\r\n name: SIGNER_CONFIG.DEFAULT_RELYING_PARTY_NAME,\r\n origin: typeof window !== 'undefined' ? window.location.origin : SIGNER_CONFIG.DEFAULT_RELYING_PARTY_ID,\r\n }\r\n };\r\n \r\n return new DfnsBrowserWebAuthnProvider(config)\r\n}","/**\r\n * React Native-specific WebAuthn provider using DFNS React Native SDK\r\n * Falls back to browser implementation for React Native Web (Expo Web)\r\n */\r\n\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\nimport type { WebAuthnProvider, WebAuthnConfig } from './WebAuthnProvider.types';\r\n\r\nclass DfnsReactNativeWebAuthnProvider implements WebAuthnProvider {\r\n private config: WebAuthnConfig;\r\n\r\n constructor(config: WebAuthnConfig) {\r\n this.config = config;\r\n }\r\n\r\n private async executeWithFallback(operation: 'create' | 'sign', challenge: any): Promise<any> {\r\n try {\r\n const { PasskeysSigner } = await import('@dfns/sdk-react-native');\r\n const signer = new PasskeysSigner({\r\n relyingParty: this.config.relyingParty,\r\n });\r\n return await signer[operation](challenge);\r\n } catch (error: any) {\r\n console.error(`Failed to ${operation} with PasskeysSigner for React Native:`, error);\r\n \r\n // Check for missing react-native-passkey package\r\n if (error?.message?.includes('react-native-passkey') || \r\n error?.message?.includes('doesn\\'t seem to be linked') ||\r\n error?.message?.includes('Expo managed workflow')) {\r\n throw new Error(\r\n `Native passkey dependency missing. Please install 'react-native-passkey' in your app:\\n\\n` +\r\n `npm install react-native-passkey\\n` +\r\n `npx pod-install ios\\n\\n` +\r\n `For Expo projects, you may need to use development builds.\\n` +\r\n `See setup guide: https://github.com/f-23/react-native-passkey#installation`\r\n );\r\n }\r\n \r\n // Check if this is React Native Web where @dfns/sdk-react-native doesn't work\r\n if (error?.message?.includes('web is not supported') || \r\n (typeof window !== 'undefined' && typeof document !== 'undefined')) {\r\n console.log(`Falling back to browser WebAuthn for React Native Web (${operation})...`);\r\n \r\n try {\r\n // Import and use browser WebAuthn provider\r\n const { getBrowserWebAuthnProvider } = await import('./WebAuthnProvider.browser');\r\n const browserProvider = await getBrowserWebAuthnProvider();\r\n return await browserProvider[operation](challenge);\r\n } catch (browserError) {\r\n console.error(`Browser WebAuthn fallback also failed for ${operation}:`, browserError);\r\n throw new Error(`WebAuthn ${operation} failed: React Native failed (${error?.message}), Browser fallback failed (${browserError}). Consider implementing external wallet signing.`);\r\n }\r\n }\r\n \r\n throw new Error(`PasskeysSigner ${operation} failed: ${error?.message}`);\r\n }\r\n }\r\n\r\n async create(challenge: any): Promise<any> {\r\n return this.executeWithFallback('create', challenge);\r\n }\r\n\r\n async sign(challenge: any): Promise<any> {\r\n return this.executeWithFallback('sign', challenge);\r\n }\r\n}\r\n\r\n/**\r\n * Get WebAuthn provider for React Native environments\r\n */\r\nexport async function getReactNativeWebAuthnProvider(): Promise<WebAuthnProvider> {\r\n const config: WebAuthnConfig = {\r\n relyingParty: {\r\n id: SIGNER_CONFIG.DEFAULT_RELYING_PARTY_ID,\r\n name: SIGNER_CONFIG.DEFAULT_RELYING_PARTY_NAME,\r\n }\r\n };\r\n \r\n return new DfnsReactNativeWebAuthnProvider(config);\r\n}","/**\r\n * PERS Blockchain Signer SDK - Simple Orchestrator\r\n * \r\n * Lightweight SDK that orchestrates existing services.\r\n * Uses environment configuration and existing infrastructure.\r\n */\r\n\r\nimport { \r\n AuthenticationService, \r\n WalletService, \r\n SigningService,\r\n PersService\r\n} from '../core';\r\nimport { TransactionSigningService } from '../transaction';\r\nimport { setConfigProvider, WebConfigProvider } from '../platform/ConfigProvider';\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\nimport { \r\n TransactionRequestResponseDTO, \r\n AnyTransactionData, \r\n TRANSACTION_FORMATS,\r\n EIP712TransactionData,\r\n TransactionFormat\r\n} from '../types/pers-types';\r\n\r\n// JWT authentication types (should eventually come from @explorins/pers-shared)\r\nexport interface JWTPayload {\r\n email?: string;\r\n userId?: string;\r\n tenantId?: string;\r\n exp?: number;\r\n [key: string]: any;\r\n}\r\n\r\nexport interface PersAuthResult {\r\n user: {\r\n email?: string;\r\n id?: string;\r\n };\r\n accessToken: string;\r\n}\r\n\r\n/**\r\n * User information for authentication\r\n */\r\nexport interface SignerUserInfo {\r\n identifier: string;\r\n email?: string;\r\n id?: string;\r\n}\r\n\r\n/**\r\n * Authenticated user with all required tokens\r\n */\r\nexport interface SignerAuthenticatedUser {\r\n identifier: string;\r\n signerAuthToken: string;\r\n persAccessToken: string;\r\n}\r\n\r\nexport interface AuthenticationResult {\r\n user: SignerAuthenticatedUser;\r\n isExpired: boolean;\r\n}\r\n\r\nexport interface JWTExtractionResult {\r\n payload: JWTPayload | null;\r\n isExpired: boolean;\r\n}\r\n\r\n// Simplified SDK Configuration - minimal external config needed\r\nexport interface PersSignerConfig {\r\n tenantId?: string; // Multi-tenant identifier\r\n ethersProviderUrl?: string; // Custom blockchain provider\r\n webAuthnProvider: WebAuthnProvider; // Platform-specific WebAuthn provider\r\n // Optional overrides for advanced use cases\r\n apiUrl?: string; // Override default signer API URL (defaults to signer-api.pers.ninja)\r\n relyingPartyName?: string; // Override default relying party name (defaults to 'PERS Signer')\r\n}\r\n\r\n// High-level operation results\r\nexport interface SigningResult {\r\n success: boolean;\r\n transactionHash?: string;\r\n error?: string;\r\n}\r\n\r\n/**\r\n * Main PERS Signer SDK class\r\n * \r\n * Simple orchestrator that uses existing services and environment configuration.\r\n * No complex initialization needed - services are already configured.\r\n */\r\nexport class PersSignerSDK {\r\n private config: PersSignerConfig;\r\n private authService: AuthenticationService;\r\n private signingService: SigningService;\r\n private transactionSigningService: TransactionSigningService;\r\n private webAuthnProvider: WebAuthnProvider;\r\n\r\n constructor(config: PersSignerConfig) {\r\n this.config = config;\r\n this.webAuthnProvider = config.webAuthnProvider;\r\n \r\n // Set up the configuration provider with stable defaults from constants\r\n const serviceConfig = {\r\n apiUrl: config.apiUrl || SIGNER_CONFIG.DEFAULT_SIGNER_API_URL,\r\n relyingParty: {\r\n id: typeof window !== 'undefined' ? window.location.hostname : 'localhost',\r\n name: config.relyingPartyName || SIGNER_CONFIG.DEFAULT_RELYING_PARTY_NAME,\r\n origin: typeof window !== 'undefined' ? window.location.origin : undefined,\r\n },\r\n };\r\n setConfigProvider(new WebConfigProvider(serviceConfig));\r\n \r\n // Initialize services with the WebAuthn provider\r\n this.authService = new AuthenticationService(this.webAuthnProvider);\r\n this.signingService = new SigningService(this.webAuthnProvider);\r\n this.transactionSigningService = new TransactionSigningService(this.webAuthnProvider);\r\n }\r\n\r\n /**\r\n * Re-export TransactionSigningService with WebAuthn provider already injected\r\n * This provides the same interface as the original service but with automatic provider injection\r\n */\r\n get TransactionSigningService() {\r\n return this.transactionSigningService;\r\n }\r\n\r\n\r\n\r\n // ========================================================================\r\n // HIGH-LEVEL METHODS (Same as Web Project)\r\n // ========================================================================\r\n\r\n /**\r\n * Complete user onboarding flow - same as web project\r\n * Uses existing AuthenticationService and PersService\r\n */\r\n async authenticateUser(userInfo: SignerUserInfo): Promise<SignerAuthenticatedUser> {\r\n const identifier = userInfo.identifier;\r\n \r\n try {\r\n // Step 1: Try login first (existing user)\r\n let signerAuthToken: string;\r\n\r\n try {\r\n signerAuthToken = await this.authService.login(identifier);\r\n } catch (loginError) {\r\n // User doesn't exist - register new user\r\n await this.authService.register(identifier);\r\n signerAuthToken = await this.authService.login(identifier);\r\n }\r\n\r\n // Step 2: Authenticate with PERS backend\r\n let persAccessToken: string = '';\r\n try {\r\n const persResponse = await PersService.authenticateUser(signerAuthToken);\r\n persAccessToken = persResponse?.accessToken || '';\r\n } catch (persError) {\r\n console.warn(`PERS authentication failed:`, persError);\r\n // Continue without PERS but provide empty token\r\n persAccessToken = '';\r\n }\r\n\r\n return {\r\n identifier,\r\n signerAuthToken,\r\n persAccessToken\r\n };\r\n\r\n } catch (error) {\r\n throw new Error(`User authentication failed: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Complete PERS transaction signing flow - exactly like web project\r\n * Uses existing TransactionSigningService with injected WebAuthn provider\r\n */\r\n async signPersTransaction(\r\n user: SignerAuthenticatedUser, \r\n transactionId: string\r\n ): Promise<SigningResult> {\r\n if (!user.signerAuthToken) {\r\n throw new Error('Signer authentication token required');\r\n }\r\n\r\n if (!user.persAccessToken) {\r\n throw new Error('PERS access token required for transaction signing');\r\n }\r\n\r\n try {\r\n // Use the existing high-level service with injected WebAuthn provider\r\n const result = await this.transactionSigningService.signTransaction({\r\n transactionId,\r\n authTokens: {\r\n backendAuthToken: user.signerAuthToken,\r\n persAccessToken: user.persAccessToken\r\n },\r\n ethersProviderUrl: this.config.ethersProviderUrl || 'https://sepolia.infura.io/v3/2781b4b5242343d5b0954c98f287b29e'\r\n });\r\n\r\n return {\r\n success: result.success,\r\n transactionHash: result.transactionHash,\r\n error: result.error\r\n };\r\n\r\n } catch (error) {\r\n return {\r\n success: false,\r\n error: `Transaction signing failed: ${error}`\r\n };\r\n }\r\n }\r\n\r\n // ========================================================================\r\n // GRANULAR METHODS (For Custom Integrations)\r\n // ========================================================================\r\n\r\n /**\r\n * Register new user - uses existing AuthenticationService\r\n */\r\n async registerUser(identifier: string): Promise<{ authToken: string }> {\r\n try {\r\n await this.authService.register(identifier);\r\n const authToken = await this.authService.login(identifier);\r\n return { authToken };\r\n } catch (error) {\r\n throw new Error(`User registration failed: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Login existing user - uses existing AuthenticationService \r\n */\r\n async loginUser(identifier: string): Promise<string> {\r\n try {\r\n return await this.authService.login(identifier);\r\n } catch (error) {\r\n throw new Error(`User login failed: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Add wallet to PERS user - uses existing PersService\r\n */\r\n async addWalletToPersUser(signerAuthToken: string): Promise<string> {\r\n try {\r\n const persResponse = await PersService.authenticateUser(signerAuthToken);\r\n \r\n if (!persResponse?.accessToken) {\r\n throw new Error('Failed to get PERS access token');\r\n }\r\n\r\n return persResponse.accessToken;\r\n } catch (error) {\r\n throw new Error(`Failed to add wallet to PERS user: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Retrieve transaction data from PERS - uses existing PersService\r\n */\r\n async retrieveTransactionData(\r\n transactionId: string, \r\n persAccessToken: string\r\n ): Promise<TransactionRequestResponseDTO> {\r\n try {\r\n return await PersService.fetchPreparedTransaction(transactionId, persAccessToken);\r\n } catch (error) {\r\n // Preserve original error structure for proper error handling\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Sign transaction data - uses existing SigningService\r\n * Follows same patterns as KeyWallet.signPersTransaction\r\n */\r\n async signTransactionData(\r\n signerAuthToken: string, \r\n signingData: AnyTransactionData\r\n ): Promise<string> {\r\n try {\r\n const wallets = await WalletService.listWallets(signerAuthToken);\r\n \r\n if (!wallets.items || wallets.items.length === 0) {\r\n throw new Error('No wallet found for user');\r\n }\r\n\r\n const walletId = wallets.items[0].id;\r\n\r\n // Sign based on transaction format - same pattern as KeyWallet\r\n switch (signingData.format) {\r\n case TRANSACTION_FORMATS.EIP_712: {\r\n const eip712Data = signingData as EIP712TransactionData;\r\n const typedData = eip712Data.typedData;\r\n \r\n // Sign using same pattern as KeyWallet\r\n const signResponse = await this.signingService.signTypedData(\r\n signerAuthToken,\r\n walletId,\r\n typedData.domain,\r\n { Transaction: typedData.types.Transaction },\r\n typedData.message\r\n );\r\n return `${signResponse.signature?.r}${signResponse.signature?.s}`;\r\n }\r\n \r\n default: {\r\n // For legacy and other formats, use raw signing data\r\n const signResponse = await this.signingService.signHash(\r\n signerAuthToken,\r\n walletId,\r\n JSON.stringify(signingData)\r\n );\r\n return `${signResponse.signature?.r}${signResponse.signature?.s}`;\r\n }\r\n }\r\n } catch (error) {\r\n throw new Error(`Transaction signing failed: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Submit signed transaction to PERS - uses existing PersService\r\n */\r\n async submitTransaction(\r\n transactionId: string,\r\n signature: string,\r\n persAccessToken: string,\r\n transactionFormat: TransactionFormat = TRANSACTION_FORMATS.EIP_712\r\n ): Promise<{ transactionHash?: string; success: boolean }> {\r\n try {\r\n const submitResult = await PersService.submitTransaction(\r\n transactionId,\r\n signature,\r\n persAccessToken,\r\n transactionFormat\r\n );\r\n\r\n return {\r\n transactionHash: submitResult.transaction?.transactionHash || undefined,\r\n success: true\r\n };\r\n } catch (error) {\r\n throw new Error(`Transaction submission failed: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Check if user exists - uses existing AuthenticationService\r\n */\r\n async checkUserExists(identifier: string): Promise<boolean> {\r\n try {\r\n await this.authService.login(identifier);\r\n return true;\r\n } catch {\r\n return false;\r\n }\r\n }\r\n\r\n /**\r\n * Get user wallets - uses existing WalletService\r\n */\r\n async getUserWallets(signerAuthToken: string): Promise<any> {\r\n try {\r\n return await WalletService.listWallets(signerAuthToken);\r\n } catch (error) {\r\n throw new Error(`Failed to get user wallets: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Get transaction status - uses existing PersService\r\n */\r\n async getTransactionStatus(\r\n transactionId: string, \r\n persAccessToken: string\r\n ): Promise<{ status: string; transactionHash?: string }> {\r\n try {\r\n const transaction = await PersService.fetchPreparedTransaction(transactionId, persAccessToken);\r\n \r\n return {\r\n status: transaction.transactionStatus,\r\n transactionHash: transaction.transaction?.transactionHash || undefined\r\n };\r\n } catch (error) {\r\n throw new Error(`Failed to get transaction status: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Initialize tenant - uses existing PersService\r\n */\r\n async initializeTenant(tenantId: string): Promise<void> {\r\n await PersService.initializeTenant(tenantId);\r\n }\r\n\r\n // ========================================================================\r\n // JWT AUTHENTICATION METHODS (For Legacy PERS Flow)\r\n // ========================================================================\r\n\r\n /**\r\n * Extract and validate JWT token from URL search parameters\r\n * Uses a simpler approach compatible with browser environments\r\n */\r\n extractJWTFromURL(searchParams: URLSearchParams): JWTExtractionResult {\r\n const jwtToken = searchParams.get('jwt') || searchParams.get('token');\r\n \r\n if (!jwtToken) {\r\n return { payload: null, isExpired: false };\r\n }\r\n\r\n try {\r\n // Use a more compatible JWT decoding approach\r\n // Split JWT into parts\r\n const parts = jwtToken.split('.');\r\n if (parts.length !== 3) {\r\n throw new Error('Invalid JWT format');\r\n }\r\n \r\n // Decode the payload (middle part)\r\n const payload = JSON.parse(atob(parts[1])) as JWTPayload;\r\n \r\n // Check expiration\r\n const isExpired = payload.exp ? Date.now() >= payload.exp * 1000 : false;\r\n \r\n return { payload, isExpired };\r\n } catch (error) {\r\n console.warn('JWT decode failed:', error);\r\n return { payload: null, isExpired: false };\r\n }\r\n }\r\n\r\n /**\r\n * Initialize tenant from JWT payload using existing PersService\r\n */\r\n async initializeTenantFromJWT(payload: JWTPayload): Promise<string> {\r\n if (!payload.tenantId) {\r\n return 'default';\r\n }\r\n\r\n try {\r\n // Use existing PersService.initializeTenant method\r\n const tenantData = await PersService.initializeTenant(payload.tenantId);\r\n \r\n // Extract project key from tenant data\r\n const projectKey = (tenantData as any).projectKey || \r\n (tenantData as any).projectApiKey || \r\n (tenantData as any).apiKey || \r\n payload.tenantId;\r\n \r\n return projectKey;\r\n } catch (error) {\r\n console.warn('Tenant initialization failed:', error);\r\n return payload.tenantId;\r\n }\r\n }\r\n\r\n /**\r\n * Authenticate user with PERS API using existing PersService pattern\r\n */\r\n /**\r\n * Authenticate user with PERS API using existing PersService\r\n */\r\n async authenticatePersUser(jwtToken: string, projectKey: string): Promise<PersAuthResult> {\r\n try {\r\n // Configure PersService with the project key from tenant initialization\r\n PersService.configure({ projectKey });\r\n \r\n // Use the existing PersService method which handles all the complexity\r\n const result = await PersService.authenticateUser(jwtToken);\r\n \r\n // Convert to expected PersAuthResult format\r\n return {\r\n user: {\r\n email: result.user?.email || undefined,\r\n id: result.user?.id || undefined\r\n },\r\n accessToken: result.accessToken\r\n };\r\n } catch (error) {\r\n throw new Error(`PERS authentication failed: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Combined PERS + DFNS authentication flow\r\n */\r\n async combinedAuthentication(identifier: string, persAccessToken: string): Promise<SignerAuthenticatedUser> {\r\n try {\r\n // Authenticate with DFNS only (we already have PERS token)\r\n const signerAuthToken = await this.loginUser(identifier);\r\n \r\n return {\r\n identifier,\r\n signerAuthToken,\r\n persAccessToken\r\n };\r\n } catch (error) {\r\n throw new Error(`Combined authentication failed: ${error}`);\r\n }\r\n }\r\n\r\n /**\r\n * Complete JWT-based authentication flow (legacy PERS flow)\r\n */\r\n async authenticateWithJWT(searchParams: URLSearchParams): Promise<AuthenticationResult | null> {\r\n // 1. Extract JWT from URL\r\n const { payload, isExpired } = this.extractJWTFromURL(searchParams);\r\n \r\n if (!payload) {\r\n // Return null instead of throwing error to allow graceful handling\r\n return null;\r\n }\r\n \r\n if (isExpired) {\r\n return {\r\n user: {\r\n identifier: payload.email || payload.userId || 'unknown',\r\n signerAuthToken: '',\r\n persAccessToken: ''\r\n },\r\n isExpired: true\r\n };\r\n }\r\n \r\n // 2. Initialize tenant and get project key\r\n const projectKey = await this.initializeTenantFromJWT(payload);\r\n \r\n // 3. Get JWT token from URL\r\n const jwtToken = searchParams.get('jwt') || searchParams.get('token');\r\n if (!jwtToken) {\r\n throw new Error('JWT token not found in URL parameters');\r\n }\r\n \r\n // 4. Authenticate with PERS\r\n const persResult = await this.authenticatePersUser(jwtToken, projectKey);\r\n \r\n // 5. Get identifier for DFNS authentication\r\n const identifier = persResult.user.email || persResult.user.id;\r\n if (!identifier) {\r\n throw new Error('No identifier found in PERS response');\r\n }\r\n \r\n // 6. Combined authentication\r\n const user = await this.combinedAuthentication(identifier, persResult.accessToken);\r\n \r\n return {\r\n user,\r\n isExpired: false\r\n };\r\n }\r\n}\r\n\r\n/**\r\n * Factory function to create SDK\r\n * Requires WebAuthnProvider from platform-specific entry point\r\n */\r\nexport function createPersSignerSDK(config: PersSignerConfig): PersSignerSDK {\r\n return new PersSignerSDK(config);\r\n}","/**\r\n * Utility functions for handling URL search parameters in a consistent way across applications\r\n */\r\n\r\n/**\r\n * Creates a URL search string that preserves all current parameters\r\n * @param paramsToExclude Array of parameter names to exclude from the result\r\n * @param paramsToAdd Object with additional parameters to add or override\r\n * @param baseParams Optional URLSearchParams object to use instead of window.location.search\r\n * @returns A search string with '?' prefix if there are parameters, or empty string if no parameters\r\n */\r\nexport function createSearchString(\r\n paramsToExclude: string[] = [], \r\n paramsToAdd: Record<string, string> = {},\r\n baseParams?: URLSearchParams | string\r\n): string {\r\n // Get base search params from the provided value or window location\r\n const currentParams = new URLSearchParams(\r\n baseParams instanceof URLSearchParams \r\n ? baseParams\r\n : baseParams !== undefined \r\n ? baseParams \r\n : (typeof window !== 'undefined' ? window.location.search : '')\r\n );\r\n \r\n // Remove excluded parameters\r\n paramsToExclude.forEach(param => {\r\n if (currentParams.has(param)) {\r\n currentParams.delete(param);\r\n }\r\n });\r\n \r\n // Add or update new parameters\r\n Object.entries(paramsToAdd).forEach(([key, value]) => {\r\n if (value !== undefined && value !== null) {\r\n currentParams.set(key, value);\r\n }\r\n });\r\n \r\n const searchString = currentParams.toString();\r\n return searchString ? `?${searchString}` : '';\r\n}\r\n\r\n/**\r\n * Creates a URL path with search parameters\r\n * @param basePath The base path without search parameters\r\n * @param paramsToExclude Array of parameter names to exclude from the result\r\n * @param paramsToAdd Object with additional parameters to add or override\r\n * @param baseParams Optional URLSearchParams object to use instead of window.location.search\r\n * @returns A full path with search parameters\r\n */\r\nexport function createUrlWithSearchParams(\r\n basePath: string,\r\n paramsToExclude: string[] = [],\r\n paramsToAdd: Record<string, string> = {},\r\n baseParams?: URLSearchParams | string\r\n): string {\r\n const searchString = createSearchString(paramsToExclude, paramsToAdd, baseParams);\r\n return `${basePath}${searchString}`;\r\n}\r\n\r\n/**\r\n * Combines the current search parameters with new ones\r\n * @param searchParams The current URLSearchParams object\r\n * @param additionalParams Object with parameters to add or update\r\n * @returns A new URLSearchParams object\r\n */\r\nexport function mergeSearchParams(\r\n searchParams: URLSearchParams, \r\n additionalParams: Record<string, string> = {}\r\n): URLSearchParams {\r\n const merged = new URLSearchParams(searchParams.toString());\r\n \r\n Object.entries(additionalParams).forEach(([key, value]) => {\r\n if (value !== undefined && value !== null) {\r\n merged.set(key, value);\r\n }\r\n });\r\n \r\n return merged;\r\n}\r\n\r\n/**\r\n * Gets all search parameters as a Record object\r\n * @param search Optional search string to parse (defaults to window.location.search)\r\n * @returns A record of all search parameters\r\n */\r\nexport function getSearchParamsAsObject(search?: string): Record<string, string> {\r\n const params = new URLSearchParams(search || (typeof window !== 'undefined' ? window.location.search : ''));\r\n const result: Record<string, string> = {};\r\n \r\n params.forEach((value, key) => {\r\n result[key] = value;\r\n });\r\n \r\n return result;\r\n}\r\n\r\n/**\r\n * Gets a specific search parameter value\r\n * @param key The parameter name to get\r\n * @param search Optional search string to parse (defaults to window.location.search)\r\n * @returns The parameter value or null if not found\r\n */\r\nexport function getSearchParam(key: string, search?: string): string | null {\r\n const params = new URLSearchParams(search || (typeof window !== 'undefined' ? window.location.search : ''));\r\n return params.get(key);\r\n}\r\n\r\n/**\r\n * Gets all search parameters as a URLSearchParams object\r\n * @param search Optional search string to parse (defaults to window.location.search)\r\n * @returns A URLSearchParams object\r\n */\r\nexport function getAllSearchParams(search?: string): URLSearchParams {\r\n return new URLSearchParams(search || (typeof window !== 'undefined' ? window.location.search : ''));\r\n}\r\n\r\n/**\r\n * Removes a specific search parameter\r\n * @param key The parameter name to remove\r\n * @param search Optional search string to parse (defaults to window.location.search)\r\n * @returns A new search string without the specified parameter\r\n */\r\nexport function removeSearchParam(key: string, search?: string): string {\r\n const params = new URLSearchParams(search || (typeof window !== 'undefined' ? window.location.search : ''));\r\n params.delete(key);\r\n const searchString = params.toString();\r\n return searchString ? `?${searchString}` : '';\r\n}\r\n\r\n/**\r\n * Updates or adds a specific search parameter\r\n * @param key The parameter name to update\r\n * @param value The new value for the parameter\r\n * @param search Optional search string to parse (defaults to window.location.search)\r\n * @returns A new search string with the updated parameter\r\n */\r\nexport function updateSearchParam(key: string, value: string, search?: string): string {\r\n const params = new URLSearchParams(search || (typeof window !== 'undefined' ? window.location.search : ''));\r\n params.set(key, value);\r\n const searchString = params.toString();\r\n return searchString ? `?${searchString}` : '';\r\n}\r\n","/**\r\n * Utility for debugging search parameter handling\r\n */\r\n\r\n/**\r\n * Logs the current search parameters with a custom message\r\n * This is useful for debugging search parameter preservation across navigation\r\n * \r\n * @param message - A descriptive message to identify where the logging happens\r\n * @param additionalData - Optional additional data to log\r\n */\r\nexport function logSearchParams(message: string, additionalData?: any): void {\r\n if (process.env.NODE_ENV !== 'production') {\r\n // Check if window exists (for SSR compatibility)\r\n if (typeof window === 'undefined') {\r\n\r\n return;\r\n }\r\n \r\n const searchParams = new URLSearchParams(window.location.search);\r\n const paramsObj: Record<string, string> = {};\r\n \r\n searchParams.forEach((value, key) => {\r\n paramsObj[key] = value;\r\n });\r\n \r\n console.group(`🔍 Search Params: ${message}`);\r\n\r\n \r\n if (additionalData) {\r\n\r\n }\r\n \r\n console.groupEnd();\r\n }\r\n}\r\n\r\n/**\r\n * Creates a search parameter tracking hook that can be used in React components\r\n * Logs search parameter changes when the component mounts/updates\r\n * \r\n * @param componentName - The name of the component (for logging)\r\n */\r\nexport function createSearchParamLogger(componentName: string) {\r\n return () => {\r\n logSearchParams(`${componentName} rendered`);\r\n };\r\n}\r\n","/**\r\n * Generates a RFC4122 version 4 compliant UUID\r\n * @returns A randomly generated UUID\r\n */\r\nexport function generateUUID(): string {\r\n return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {\r\n const r = Math.random() * 16 | 0;\r\n const v = c === 'x' ? r : (r & 0x3 | 0x8);\r\n return v.toString(16);\r\n });\r\n}\r\n\r\n/**\r\n * Create a semi-anonymous username for users\r\n * @returns A username in the format \"user_[random string]\"\r\n */\r\nexport function generateAnonymousUsername(): string {\r\n const randomPart = Math.random().toString(36).substring(2, 10);\r\n return `user_${randomPart}`;\r\n}\r\n\r\n/**\r\n * Create a guest username for the application with a random prefix\r\n * @returns A guest email in the format \"randomstring_guest@explorins.com\"\r\n */\r\nexport function generateGuestUsername(): string {\r\n const randomPart = Math.random().toString(36).substring(2, 8); // 6 character random string\r\n return `${randomPart}_guest@explorins.com`;\r\n}\r\n","/**\r\n * Utility functions for tenant-specific operations\r\n */\r\n\r\n/**\r\n * Represents a tenant configuration\r\n */\r\nexport interface TenantConfig {\r\n id: string;\r\n name: string;\r\n analytics?: {\r\n enabled: boolean;\r\n trackingId?: string;\r\n };\r\n}\r\n\r\n/**\r\n * Initialize tenant-specific analytics\r\n * @param tenantId The tenant ID\r\n * @param getTenantConfig Function to retrieve tenant configuration\r\n */\r\nexport const initTenantAnalytics = (\r\n tenantId: string, \r\n getTenantConfig: (id: string) => TenantConfig | null\r\n): void => {\r\n const tenant = getTenantConfig(tenantId);\r\n \r\n if (!tenant) {\r\n console.warn(`Tenant ${tenantId} not found`);\r\n return;\r\n }\r\n\r\n if (tenant.analytics && tenant.analytics.enabled && tenant.analytics.trackingId) {\r\n\r\n // In a real application, you would initialize your analytics SDK here.\r\n // For example, if using Google Analytics (gtag.js):\r\n /*\r\n const script = document.createElement('script');\r\n script.async = true;\r\n script.src = `https://www.googletagmanager.com/gtag/js?id=${tenant.analytics.trackingId}`;\r\n document.head.appendChild(script);\r\n\r\n window.dataLayer = window.dataLayer || [];\r\n function gtag(...args: any[]) { (window.dataLayer as any[]).push(args); }\r\n gtag('js', new Date());\r\n gtag('config', tenant.analytics.trackingId);\r\n\r\n */\r\n\r\n // Example for a generic analytics provider:\r\n // AnalyticsProvider.init(tenant.analytics.trackingId, { tenantName: tenant.name });\r\n // AnalyticsProvider.trackEvent('page_view', { page_path: window.location.pathname });\r\n\r\n // For this example, we'll just log to the console.\r\n // Replace this with actual analytics SDK integration.\r\n } else {\r\n\r\n }\r\n};\r\n","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n})({});\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PolicyPendingError = exports.DfnsError = void 0;\nclass DfnsError extends Error {\n constructor(httpStatus, message, context) {\n super(message);\n this.httpStatus = httpStatus;\n this.context = context;\n this.name = 'DfnsError';\n }\n toString() {\n return JSON.stringify({\n httpStatus: this.httpStatus,\n message: this.message,\n ...(this.context && this.context),\n }, null, 2);\n }\n}\nexports.DfnsError = DfnsError;\nclass PolicyPendingError extends DfnsError {\n constructor(context) {\n super(PolicyPendingError.HTTP_ACCEPTED, 'Operation triggered a policy pending approval', context);\n }\n}\nexports.PolicyPendingError = PolicyPendingError;\nPolicyPendingError.HTTP_ACCEPTED = 202;\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return '<Buffer ' + str + '>'\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fromBase64Url = exports.toBase64Url = exports.fromBase64 = exports.toBase64 = void 0;\nconst buffer_1 = require(\"buffer\");\nconst pad = (topad) => {\n const padLength = 4 - (topad.length % 4);\n if (padLength < 4) {\n topad += '='.repeat(padLength);\n }\n return topad;\n};\nconst toBase64 = (buffer) => {\n if (typeof buffer === 'string') {\n buffer = buffer_1.Buffer.from(buffer);\n }\n return buffer.toString('base64');\n};\nexports.toBase64 = toBase64;\nconst fromBase64 = (encoded) => {\n return buffer_1.Buffer.from(pad(encoded), 'base64');\n};\nexports.fromBase64 = fromBase64;\nconst toBase64Url = (buffer) => {\n return (0, exports.toBase64)(buffer).replace(/=/g, '').replace(/\\+/g, '-').replace(/\\//g, '_');\n};\nexports.toBase64Url = toBase64Url;\nconst fromBase64Url = (encoded) => {\n encoded = pad(encoded).replace(/\\-/g, '+').replace(/_/g, '/');\n return buffer_1.Buffer.from(encoded, 'base64');\n};\nexports.fromBase64Url = fromBase64Url;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assertAuthTokenIsSameOrg = exports.JWT_CUSTOM_DATA_CLAIM = void 0;\nconst base64_1 = require(\"./base64\");\nexports.JWT_CUSTOM_DATA_CLAIM = 'https://custom/app_metadata';\nconst assertAuthTokenIsSameOrg = ({ authToken, orgId }) => {\n const tokenBody = authToken.split('.')?.[1] || '';\n let decoded;\n try {\n decoded = JSON.parse((0, base64_1.fromBase64)(tokenBody).toString('utf-8'));\n }\n catch (error) {\n throw new Error('Provided auth token could not be properly parsed');\n }\n const tokenOrgId = decoded?.[exports.JWT_CUSTOM_DATA_CLAIM]?.['orgId'];\n if (tokenOrgId !== orgId) {\n throw new Error(`Provided auth token is not scoped to org ID ${orgId}`);\n }\n};\nexports.assertAuthTokenIsSameOrg = assertAuthTokenIsSameOrg;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.simpleFetch = exports.dfnsAuth = exports.catchPolicyPending = exports.errorHandler = exports.jsonSerializer = exports.fullUrl = void 0;\nconst cross_fetch_1 = require(\"cross-fetch\");\nconst dfnsError_1 = require(\"../dfnsError\");\nconst DEFAULT_DFNS_BASE_URL = 'https://api.dfns.io';\nconst package_json_1 = require(\"../package.json\");\nconst authToken_1 = require(\"./authToken\");\nconst fullUrl = (fetch) => {\n return async (resource, options) => {\n const baseUrl = options.apiOptions.baseUrl || DEFAULT_DFNS_BASE_URL;\n resource = new URL(resource, baseUrl);\n return fetch(resource, options);\n };\n};\nexports.fullUrl = fullUrl;\nconst jsonSerializer = (fetch) => {\n return async (resource, options) => {\n if (options.body) {\n options.body = JSON.stringify(options.body);\n options.headers = {\n 'content-type': 'application/json',\n ...(options.headers ?? {}),\n };\n }\n return fetch(resource, options);\n };\n};\nexports.jsonSerializer = jsonSerializer;\nconst errorHandler = (fetch) => {\n return async (resource, options) => {\n const response = await fetch(resource, options);\n if (response.ok) {\n return response;\n }\n else {\n const body = await response.json();\n const message = body?.error?.message ?? body?.message;\n throw new dfnsError_1.DfnsError(response.status, message, {\n url: response.url,\n headers: response.headers,\n body,\n });\n }\n };\n};\nexports.errorHandler = errorHandler;\n// raise a 202 response by policy execution as error\nconst catchPolicyPending = (fetch) => {\n return async (resource, options) => {\n const response = await fetch(resource, options);\n if (response.status === dfnsError_1.PolicyPendingError.HTTP_ACCEPTED) {\n throw new dfnsError_1.PolicyPendingError(await response.json());\n }\n else {\n return response;\n }\n };\n};\nexports.catchPolicyPending = catchPolicyPending;\nconst dfnsAuth = (fetch) => {\n return async (resource, options) => {\n const { orgId, authToken } = options.apiOptions;\n if (authToken && orgId) {\n (0, authToken_1.assertAuthTokenIsSameOrg)({ orgId, authToken });\n }\n const authorization = authToken\n ? {\n authorization: `Bearer ${authToken}`,\n }\n : {};\n options.headers = {\n 'x-dfns-sdk-version': package_json_1.version,\n ...authorization,\n ...(options.headers ?? {}),\n };\n return fetch(resource, options);\n };\n};\nexports.dfnsAuth = dfnsAuth;\nexports.simpleFetch = (0, exports.fullUrl)((0, exports.jsonSerializer)((0, exports.dfnsAuth)((0, exports.catchPolicyPending)((0, exports.errorHandler)(cross_fetch_1.fetch)))));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BaseAuthApi = void 0;\nconst fetch_1 = require(\"./utils/fetch\");\nclass BaseAuthApi {\n /**\n * Creates a user action challenge\n */\n static async createUserActionChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/action/init', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Sign a user action challenge\n */\n static async signUserActionChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/action', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Initiates user login, by creating a challenge that will need to be signed by the user Credentials.\n */\n static async createUserLoginChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/login/init', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes user login by sending the signed login challenge.\n */\n static async createUserLogin(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/login', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes user logout by sending the user auth token.\n */\n static async userLogout(options) {\n if (!options.authToken) {\n throw new Error('authToken is required');\n }\n const response = await (0, fetch_1.simpleFetch)('/auth/logout', {\n method: 'PUT',\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Initiates Registration by creating a challenge that will need to be signed by a new set of Credentials.\n */\n static async createUserRegistrationChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/registration/init', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes Registration by sending the signed registration challenge, containing the new Credential identity created.\n */\n static async createUserRegistration(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/registration', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes Recovery by sending the signed recovery challenge, containing the new Credential identity created.\n */\n async createUserRecovery(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/recover/user', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n}\nexports.BaseAuthApi = BaseAuthApi;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.userActionFetch = void 0;\nconst cross_fetch_1 = require(\"cross-fetch\");\nconst fetch_1 = require(\"./fetch\");\nconst baseAuthApi_1 = require(\"../baseAuthApi\");\nconst dfnsError_1 = require(\"../dfnsError\");\nconst userAction = (fetch) => {\n return async (resource, options) => {\n if (options.method !== 'GET') {\n const apiOptions = {\n ...options.apiOptions,\n baseUrl: options.apiOptions.baseAuthUrl || options.apiOptions.baseUrl,\n };\n if (!apiOptions.signer) {\n throw new dfnsError_1.DfnsError(-1, 'A \"signer\" needs to be passed to Dfns client.', {\n detail: `Most non-readonly endpoints require \"User Action Signing\" flow.` +\n ` During that flow, the credential \"signer\" that you passed will handle signing` +\n ` the user action challenge, using your credential.`,\n });\n }\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionPayload: options.body ?? '',\n userActionHttpMethod: options.method,\n userActionHttpPath: resource.pathname,\n userActionServerKind: apiOptions?.userActionServerKind || 'Api',\n }, apiOptions);\n const assertion = await apiOptions.signer.sign(challenge);\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge({\n challengeIdentifier: challenge.challengeIdentifier,\n firstFactor: assertion,\n }, apiOptions);\n options.headers = {\n 'x-dfns-useraction': userAction,\n ...(options.headers ?? {}),\n };\n }\n return fetch(resource, options);\n };\n};\nexports.userActionFetch = (0, fetch_1.fullUrl)((0, fetch_1.jsonSerializer)((0, fetch_1.dfnsAuth)(userAction((0, fetch_1.catchPolicyPending)((0, fetch_1.errorHandler)(cross_fetch_1.fetch))))));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.buildPathAndQuery = void 0;\nconst buildPathAndQuery = (pattern, params) => {\n let path = pattern;\n const paramsToReplace = (path.match(new RegExp(`:[a-zA-Z]+`, 'g')) || []).map((v) => v.replace(/^:/, ''));\n for (const key of paramsToReplace) {\n path = path.replace(new RegExp(`:${key}`, 'g'), encodeURIComponent(params.path[key]));\n }\n const query = Object.entries(params.query)\n .filter(([_, value]) => !!value)\n .map(([key, value]) => `${key}=${encodeURIComponent(value.toString())}`)\n .join('&');\n return query === '' ? path : `${path}?${query}`;\n};\nexports.buildPathAndQuery = buildPathAndQuery;\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AuthClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass AuthClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateCredential(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activatePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archivePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredential(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createCredential instead */\n async createUserCredential(request) {\n return this.createCredential(request);\n }\n async createCredentialChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createCredentialChallenge instead */\n async createUserCredentialChallenge(request) {\n return this.createCredentialChallenge(request);\n }\n async createCredentialChallengeWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/verify', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createDelegatedRecoveryChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/delegated', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createDelegatedRecoveryChallenge instead */\n async createDelegatedUserRecovery(request) {\n return this.createDelegatedRecoveryChallenge(request);\n }\n async createDelegatedRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/delegated', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createDelegatedRegistrationChallenge instead */\n async createDelegatedUserRegistration(request) {\n return this.createDelegatedRegistrationChallenge(request);\n }\n async createLoginChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRecoveryChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSocialRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUserActionChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createUserActionChallenge instead */\n async createUserActionSignatureChallenge(request) {\n return this.createUserActionChallenge(request);\n }\n async createUserActionSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateCredential(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivatePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegatedLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/delegated', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use delegatedLogin instead */\n async createDelegatedUserLogin(request) {\n return this.delegatedLogin(request);\n }\n async getApplication(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps/:appId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getAuditLog(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs/:id', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApplications() {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAuditLogs(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCredentials() {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use listCredentials instead */\n async listUserCredentials() {\n return this.listCredentials();\n }\n async listPersonalAccessTokens() {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listServiceAccounts() {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listUsers(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async login(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async logout(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/logout', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request?.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recover(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use recover instead */\n async createUserRecovery(request) {\n return this.recover(request);\n }\n async register(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use register instead */\n async createUserRegistration(request) {\n return this.register(request);\n }\n async registerEndUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/enduser', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async resendRegistrationCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendLoginCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendRecoveryCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async socialLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLoginInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.AuthClient = AuthClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedAuthClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedAuthClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateCredentialInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateCredentialComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activatePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activatePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archivePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archivePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archiveServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archiveUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createCredentialComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createCredentialChallenge instead */\n async createUserCredentialChallenge(request) {\n return this.createCredentialChallenge(request);\n }\n async createCredentialChallengeWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialCodeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createCredentialCodeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/verify', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createDelegatedRecoveryChallengeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/delegated', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createDelegatedRecoveryChallengeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/delegated', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createDelegatedRegistrationChallengeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/delegated', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createDelegatedRegistrationChallengeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/delegated', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createLoginChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createPersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRecoveryChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSocialRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUserActionChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createUserActionChallenge instead */\n async createUserActionSignatureChallenge(request) {\n return this.createUserActionChallenge(request);\n }\n async createUserActionSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateCredentialInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateCredentialComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivatePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivatePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegatedLoginInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/delegated', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async delegatedLoginComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/delegated', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getApplication(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps/:appId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getAuditLog(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs/:id', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApplications() {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAuditLogs(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCredentials() {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use listCredentials instead */\n async listUserCredentials() {\n return this.listCredentials();\n }\n async listPersonalAccessTokens() {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listServiceAccounts() {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listUsers(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async login(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async logout(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/logout', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request?.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recover(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use recover instead */\n async createUserRecovery(request) {\n return this.recover(request);\n }\n async register(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use register instead */\n async createUserRegistration(request) {\n return this.register(request);\n }\n async registerEndUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/enduser', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async resendRegistrationCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendLoginCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendRecoveryCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async socialLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLoginInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updatePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedAuthClient = DelegatedAuthClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ExchangesClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass ExchangesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createDeposit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/deposits', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWithdrawal(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/withdrawals', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccountAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccounts(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssetWithdrawalNetworks(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets/:asset/withdrawal-networks', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listExchanges(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.ExchangesClient = ExchangesClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedExchangesClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedExchangesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createDepositInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/deposits', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createDepositComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/deposits', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createExchangeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createExchangeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWithdrawalInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/withdrawals', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createWithdrawalComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/withdrawals', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteExchangeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteExchangeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccountAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccounts(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssetWithdrawalNetworks(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets/:asset/withdrawal-networks', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listExchanges(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedExchangesClient = DelegatedExchangesClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.FeeSponsorsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass FeeSponsorsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listFeeSponsors(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSponsoredFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/fees', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.FeeSponsorsClient = FeeSponsorsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedFeeSponsorsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedFeeSponsorsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listFeeSponsors(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSponsoredFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/fees', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedFeeSponsorsClient = DelegatedFeeSponsorsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.KeysClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass KeysClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/delegate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deriveKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/derive', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/export', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/import', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listKeys(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.KeysClient = KeysClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedKeysClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedKeysClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/delegate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async delegateKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/delegate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deriveKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/derive', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deriveKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/derive', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/export', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async exportKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/export', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignatureInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async generateSignatureComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/import', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async importKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/import', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listKeys(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedKeysClient = DelegatedKeysClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NetworksClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass NetworksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/fees', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCantonValidators(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async readContract(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/read-contract', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.NetworksClient = NetworksClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedNetworksClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedNetworksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createCantonValidatorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createCantonValidatorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteCantonValidatorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteCantonValidatorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/fees', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCantonValidators(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async readContract(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/read-contract', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateCantonValidatorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateCantonValidatorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedNetworksClient = DelegatedNetworksClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PermissionsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass PermissionsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/archive', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createAssignment(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteAssignment(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments/:assignmentId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n }\n async getPermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssignments(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPermissions(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.PermissionsClient = PermissionsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedPermissionsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedPermissionsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePermissionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/archive', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archivePermissionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/archive', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createAssignmentInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createAssignmentComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPermissionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createPermissionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteAssignmentInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments/:assignmentId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteAssignmentComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments/:assignmentId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n }\n async getPermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssignments(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPermissions(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePermissionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updatePermissionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedPermissionsClient = DelegatedPermissionsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PoliciesClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass PoliciesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createApprovalDecision(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId/decisions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getApproval(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApprovals(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPolicies(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.PoliciesClient = PoliciesClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedPoliciesClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedPoliciesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePolicyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archivePolicyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createApprovalDecisionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId/decisions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createApprovalDecisionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId/decisions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPolicyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createPolicyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getApproval(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApprovals(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPolicies(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePolicyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updatePolicyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedPoliciesClient = DelegatedPoliciesClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignersClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass SignersClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async listKeyStores() {\n const path = (0, url_1.buildPathAndQuery)('/key-stores', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSigners() {\n const path = (0, url_1.buildPathAndQuery)('/signers', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.SignersClient = SignersClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedSignersClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedSignersClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async listKeyStores() {\n const path = (0, url_1.buildPathAndQuery)('/key-stores', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSigners() {\n const path = (0, url_1.buildPathAndQuery)('/signers', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedSignersClient = DelegatedSignersClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.StakingClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass StakingClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createStake(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createStakeAction(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakeRewards(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/rewards', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakeActions(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.StakingClient = StakingClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedStakingClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedStakingClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createStakeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createStakeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createStakeActionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createStakeActionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakeRewards(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/rewards', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakeActions(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedStakingClient = DelegatedStakingClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WalletsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass WalletsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async acceptOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/accept', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async broadcastTransaction(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/delegate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/export', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransaction(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions/:transactionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransfer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers/:transferId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/history', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletNfts(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/nfts', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/import', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOffers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOrgWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/all/history', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransactions(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransfers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWallets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async rejectOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/reject', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async tagWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async transferAsset(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async untagWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.WalletsClient = WalletsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedWalletsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedWalletsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async acceptOfferInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/accept', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async acceptOfferComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/accept', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async broadcastTransactionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async broadcastTransactionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/delegate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async delegateWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/delegate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/export', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async exportWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/export', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignatureInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async generateSignatureComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransaction(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions/:transactionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransfer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers/:transferId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/history', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletNfts(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/nfts', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/import', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async importWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/import', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOffers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOrgWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/all/history', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransactions(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransfers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWallets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async rejectOfferInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/reject', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async rejectOfferComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/reject', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async tagWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async tagWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async transferAssetInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async transferAssetComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async untagWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async untagWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedWalletsClient = DelegatedWalletsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WebhooksClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass WebhooksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhookEvent(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events/:webhookEventId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhookEvents(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhooks(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async pingWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/ping', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.WebhooksClient = WebhooksClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedWebhooksClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedWebhooksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhookEvent(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events/:webhookEventId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhookEvents(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhooks(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async pingWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/ping', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async pingWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/ping', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedWebhooksClient = DelegatedWebhooksClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SwapsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass SwapsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createSwap(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwap(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/:swapId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes/:quoteId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSwaps(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.SwapsClient = SwapsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedSwapsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedSwapsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createSwapInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createSwapComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwap(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/:swapId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes/:quoteId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSwaps(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedSwapsClient = DelegatedSwapsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AgreementsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass AgreementsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async getLatestUnacceptedAgreement(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/latest-unaccepted', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recordAgreementAcceptance(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/:agreementId/accept', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.AgreementsClient = AgreementsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedAgreementsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedAgreementsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async getLatestUnacceptedAgreement(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/latest-unaccepted', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recordAgreementAcceptanceInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/:agreementId/accept', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async recordAgreementAcceptanceComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/:agreementId/accept', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedAgreementsClient = DelegatedAgreementsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AllocationsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass AllocationsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createAllocation(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createAllocationAction(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations/:allocationId/actions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getAllocation(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations/:allocationId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAllocationActions(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations/:allocationId/actions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAllocations(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.AllocationsClient = AllocationsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DfnsApiClient = void 0;\nconst auth_1 = require(\"./generated/auth\");\nconst exchanges_1 = require(\"./generated/exchanges\");\nconst feeSponsors_1 = require(\"./generated/feeSponsors\");\nconst keys_1 = require(\"./generated/keys\");\nconst networks_1 = require(\"./generated/networks\");\nconst permissions_1 = require(\"./generated/permissions\");\nconst policies_1 = require(\"./generated/policies\");\nconst signers_1 = require(\"./generated/signers\");\nconst staking_1 = require(\"./generated/staking\");\nconst wallets_1 = require(\"./generated/wallets\");\nconst webhooks_1 = require(\"./generated/webhooks\");\nconst swaps_1 = require(\"./generated/swaps\");\nconst agreements_1 = require(\"./generated/agreements\");\nconst client_1 = require(\"./generated/allocations/client\");\nclass DfnsApiClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n get auth() {\n return new auth_1.AuthClient(this.apiOptions);\n }\n get exchanges() {\n return new exchanges_1.ExchangesClient(this.apiOptions);\n }\n get feeSponsors() {\n return new feeSponsors_1.FeeSponsorsClient(this.apiOptions);\n }\n get keys() {\n return new keys_1.KeysClient(this.apiOptions);\n }\n get networks() {\n return new networks_1.NetworksClient(this.apiOptions);\n }\n get permissions() {\n return new permissions_1.PermissionsClient(this.apiOptions);\n }\n get policies() {\n return new policies_1.PoliciesClient(this.apiOptions);\n }\n get staking() {\n return new staking_1.StakingClient(this.apiOptions);\n }\n get allocations() {\n return new client_1.AllocationsClient(this.apiOptions);\n }\n get swaps() {\n return new swaps_1.SwapsClient(this.apiOptions);\n }\n get agreements() {\n return new agreements_1.AgreementsClient(this.apiOptions);\n }\n get signers() {\n return new signers_1.SignersClient(this.apiOptions);\n }\n get wallets() {\n return new wallets_1.WalletsClient(this.apiOptions);\n }\n get webhooks() {\n return new webhooks_1.WebhooksClient(this.apiOptions);\n }\n}\nexports.DfnsApiClient = DfnsApiClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DfnsAuthenticator = void 0;\nconst baseAuthApi_1 = require(\"./baseAuthApi\");\nclass DfnsAuthenticator {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async login(request) {\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserLoginChallenge(request, this.apiOptions);\n const assertion = await this.apiOptions.signer.sign(challenge);\n return baseAuthApi_1.BaseAuthApi.createUserLogin({\n challengeIdentifier: challenge.challengeIdentifier,\n firstFactor: assertion,\n }, this.apiOptions);\n }\n async register(request) {\n if (!this.apiOptions.signer.create) {\n throw new Error(`Provided signer does not implement 'create'`);\n }\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserRegistrationChallenge(request, this.apiOptions);\n const attestation = await this.apiOptions.signer.create(challenge);\n return baseAuthApi_1.BaseAuthApi.createUserRegistration({ firstFactorCredential: attestation }, {\n ...this.apiOptions,\n authToken: challenge.temporaryAuthenticationToken,\n });\n }\n}\nexports.DfnsAuthenticator = DfnsAuthenticator;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DfnsDelegatedApiClient = void 0;\nconst auth_1 = require(\"./generated/auth\");\nconst exchanges_1 = require(\"./generated/exchanges\");\nconst feeSponsors_1 = require(\"./generated/feeSponsors\");\nconst keys_1 = require(\"./generated/keys\");\nconst networks_1 = require(\"./generated/networks\");\nconst permissions_1 = require(\"./generated/permissions\");\nconst policies_1 = require(\"./generated/policies\");\nconst signers_1 = require(\"./generated/signers\");\nconst wallets_1 = require(\"./generated/wallets\");\nconst webhooks_1 = require(\"./generated/webhooks\");\nclass DfnsDelegatedApiClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n get auth() {\n return new auth_1.DelegatedAuthClient(this.apiOptions);\n }\n get exchanges() {\n return new exchanges_1.DelegatedExchangesClient(this.apiOptions);\n }\n get feeSponsors() {\n return new feeSponsors_1.DelegatedFeeSponsorsClient(this.apiOptions);\n }\n get keys() {\n return new keys_1.DelegatedKeysClient(this.apiOptions);\n }\n get networks() {\n return new networks_1.DelegatedNetworksClient(this.apiOptions);\n }\n get permissions() {\n return new permissions_1.DelegatedPermissionsClient(this.apiOptions);\n }\n get policies() {\n return new policies_1.DelegatedPoliciesClient(this.apiOptions);\n }\n get wallets() {\n return new wallets_1.DelegatedWalletsClient(this.apiOptions);\n }\n get webhooks() {\n return new webhooks_1.DelegatedWebhooksClient(this.apiOptions);\n }\n get signers() {\n return new signers_1.DelegatedSignersClient(this.apiOptions);\n }\n}\nexports.DfnsDelegatedApiClient = DfnsDelegatedApiClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./baseAuthApi\"), exports);\n__exportStar(require(\"./dfnsApiClient\"), exports);\n__exportStar(require(\"./dfnsAuthenticator\"), exports);\n__exportStar(require(\"./dfnsDelegatedApiClient\"), exports);\n__exportStar(require(\"./dfnsError\"), exports);\n__exportStar(require(\"./signer\"), exports);\n__exportStar(require(\"./store\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.minimizeBigInt = void 0;\nconst minimizeBigInt = (value) => {\n const minValue = [0, ...value];\n for (let i = 0; i < minValue.length; ++i) {\n if (minValue[i] === 0) {\n continue;\n }\n if (minValue[i] > 0x7f) {\n return new Uint8Array(minValue.slice(i - 1));\n }\n return new Uint8Array(minValue.slice(i));\n }\n return new Uint8Array([0]);\n};\nexports.minimizeBigInt = minimizeBigInt;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toHex = exports.splitString = void 0;\nconst splitString = (text, maxLineLength = 64) => {\n const regex = new RegExp(`(.{1,${maxLineLength}})`, 'g');\n const matches = text.matchAll(regex);\n const lines = [];\n for (const match of matches) {\n lines.push(match[1]);\n }\n return lines;\n};\nexports.splitString = splitString;\nconst toHex = (buffer) => {\n const view = new Uint8Array(buffer);\n let hexString = \"\";\n for (const byte of view) {\n const hexByte = byte.toString(16);\n hexString += hexByte.padStart(2, \"0\");\n }\n return hexString.toLowerCase();\n};\nexports.toHex = toHex;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.rawSignatureToAns1 = exports.exportPublicKeyInPemFormatBrowser = void 0;\nconst buffer_1 = require(\"buffer\");\nconst base64_1 = require(\"./base64\");\nconst string_1 = require(\"./string\");\nconst bigint_1 = require(\"./bigint\");\n// Using crypto.subtle in order to run this in the browser\n// Adding `Browser` in the function name to distinguish with native node crypto module usage\nconst exportPublicKeyInPemFormatBrowser = async (key) => {\n const exported = await crypto.subtle.exportKey('spki', key.publicKey);\n const b64Exported = (0, base64_1.toBase64)(buffer_1.Buffer.from(exported));\n const pem = `-----BEGIN PUBLIC KEY-----\\n${(0, string_1.splitString)(b64Exported).join(\"\\n\")}\\n-----END PUBLIC KEY-----`;\n return pem;\n};\nexports.exportPublicKeyInPemFormatBrowser = exportPublicKeyInPemFormatBrowser;\nconst rawSignatureToAns1 = (rawSignature) => {\n const r = rawSignature.slice(0, 32);\n const s = rawSignature.slice(32);\n const minR = (0, bigint_1.minimizeBigInt)(r);\n const minS = (0, bigint_1.minimizeBigInt)(s);\n return new Uint8Array([\n 0x30,\n minR.length + minS.length + 4,\n 0x02,\n minR.length,\n ...minR,\n 0x02,\n minS.length,\n ...minS\n ]);\n};\nexports.rawSignatureToAns1 = rawSignatureToAns1;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateRandom = void 0;\n__exportStar(require(\"./base64\"), exports);\n__exportStar(require(\"./bigint\"), exports);\n__exportStar(require(\"./crypto\"), exports);\n__exportStar(require(\"./fetch\"), exports);\n__exportStar(require(\"./string\"), exports);\n__exportStar(require(\"./url\"), exports);\nconst generateRandom = (size) => {\n const buffer = new Uint8Array(size);\n for (let i = 0; i < size; i++) {\n buffer[i] = Math.floor(Math.random() * 256);\n }\n return buffer;\n};\nexports.generateRandom = generateRandom;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BrowserKeySigner = void 0;\nconst sdk_1 = require(\"@dfns/sdk\");\nconst utils_1 = require(\"@dfns/sdk/utils\");\nconst buffer_1 = require(\"buffer\");\nclass BrowserKeySigner {\n constructor(options) {\n this.options = options;\n }\n async create(challenge) {\n let credId = this.options.credId;\n if (credId === undefined || credId === '') {\n credId = (0, utils_1.toBase64Url)(buffer_1.Buffer.from((0, utils_1.generateRandom)(32)));\n this.options.credId = credId;\n }\n const publicKeyPem = await (0, utils_1.exportPublicKeyInPemFormatBrowser)(this.options.keyPair);\n const clientData = JSON.stringify({\n type: 'key.create',\n challenge: challenge.challenge,\n });\n const clientDataHash = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(clientData));\n const clientDataHashHex = (0, utils_1.toHex)(clientDataHash);\n const credInfoFingerprint = JSON.stringify({\n clientDataHash: clientDataHashHex,\n publicKey: publicKeyPem,\n });\n let rawSignature;\n const algorithm = this.options.keyPair.privateKey.algorithm.name;\n if (algorithm == 'ECDSA') {\n rawSignature = await crypto.subtle.sign({ name: 'ECDSA', hash: { name: 'SHA-256' } }, this.options.keyPair.privateKey, new TextEncoder().encode(credInfoFingerprint));\n }\n else {\n throw new sdk_1.DfnsError(-1, `${algorithm} is not supported`);\n }\n const signature = (0, utils_1.rawSignatureToAns1)(new Uint8Array(rawSignature));\n const attestationData = JSON.stringify({\n publicKey: publicKeyPem,\n signature: (0, utils_1.toHex)(signature.buffer),\n });\n return {\n credentialKind: 'Key',\n credentialInfo: {\n credId,\n clientData: (0, utils_1.toBase64Url)(clientData),\n attestationData: (0, utils_1.toBase64Url)(attestationData),\n },\n };\n }\n async sign(challenge) {\n const credId = this.options.credId;\n if (credId === undefined || credId === '') {\n throw new sdk_1.DfnsError(-1, 'credId is needed to sign');\n }\n const allowedCredId = challenge.allowCredentials.key.map((cred) => cred.id);\n if (!allowedCredId.includes(credId)) {\n throw new sdk_1.DfnsError(-1, `${credId} does not match allowed credentials: ${allowedCredId}`);\n }\n const clientData = JSON.stringify({\n type: 'key.get',\n challenge: challenge.challenge,\n });\n let rawSignature;\n const algorithm = this.options.keyPair.privateKey.algorithm.name;\n if (algorithm == 'ECDSA') {\n rawSignature = await crypto.subtle.sign({ name: 'ECDSA', hash: { name: 'SHA-256' } }, this.options.keyPair.privateKey, new TextEncoder().encode(clientData));\n }\n else {\n throw new sdk_1.DfnsError(-1, `${algorithm} is not supported`);\n }\n const signature = (0, utils_1.rawSignatureToAns1)(new Uint8Array(rawSignature));\n return {\n kind: 'Key',\n credentialAssertion: {\n credId: this.options.credId ?? '',\n clientData: (0, utils_1.toBase64Url)(clientData),\n signature: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(signature)),\n },\n };\n }\n}\nexports.BrowserKeySigner = BrowserKeySigner;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WebAuthnSigner = exports.DEFAULT_WAIT_TIMEOUT = void 0;\nconst sdk_1 = require(\"@dfns/sdk\");\nconst utils_1 = require(\"@dfns/sdk/utils\");\nconst buffer_1 = require(\"buffer\");\nexports.DEFAULT_WAIT_TIMEOUT = 60000;\nclass WebAuthnSigner {\n constructor(conf) {\n this.conf = conf;\n if (!this.conf?.relyingParty?.id || !this.conf?.relyingParty?.name) {\n throw new sdk_1.DfnsError(-1, `Relying party ID and name must be specified in the WebauthnSigner initializer`);\n }\n }\n async sign(challenge) {\n const response = await navigator.credentials.get({\n publicKey: {\n challenge: buffer_1.Buffer.from(challenge.challenge),\n allowCredentials: challenge.allowCredentials.webauthn.map(({ id, type }) => ({\n id: (0, utils_1.fromBase64Url)(id).buffer,\n type,\n })),\n rpId: this.conf.relyingParty.id,\n userVerification: challenge.userVerification,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n },\n });\n if (response === null) {\n throw new sdk_1.DfnsError(-1, 'Failed to sign with WebAuthn credential');\n }\n const credential = response;\n const assertion = credential.response;\n return {\n kind: 'Fido2',\n credentialAssertion: {\n credId: credential.id,\n clientData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.clientDataJSON)),\n authenticatorData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.authenticatorData)),\n signature: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.signature)),\n userHandle: assertion.userHandle ? (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.userHandle)) : undefined,\n },\n };\n }\n async create(challenge) {\n const options = {\n publicKey: {\n challenge: buffer_1.Buffer.from(challenge.challenge),\n pubKeyCredParams: challenge.pubKeyCredParams,\n rp: this.conf.relyingParty,\n user: {\n displayName: challenge.user.displayName,\n id: buffer_1.Buffer.from(challenge.user.id),\n name: challenge.user.name,\n },\n attestation: challenge.attestation,\n excludeCredentials: challenge.excludeCredentials.map(({ id, type }) => ({\n id: (0, utils_1.fromBase64Url)(id).buffer,\n type,\n })),\n authenticatorSelection: challenge.authenticatorSelection,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n },\n };\n const response = await navigator.credentials.create(options);\n if (response === null) {\n throw new sdk_1.DfnsError(-1, `Failed to create and sign with WebAuthn credential`);\n }\n const credential = response;\n const attestation = credential.response;\n return {\n credentialKind: 'Fido2',\n credentialInfo: {\n credId: credential.id,\n attestationData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(attestation.attestationObject)),\n clientData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(attestation.clientDataJSON)),\n },\n };\n }\n}\nexports.WebAuthnSigner = WebAuthnSigner;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WebAuthnSigner = exports.BrowserKeySigner = void 0;\nvar key_1 = require(\"./signers/key\");\nObject.defineProperty(exports, \"BrowserKeySigner\", { enumerable: true, get: function () { return key_1.BrowserKeySigner; } });\nvar webauthn_1 = require(\"./signers/webauthn\");\nObject.defineProperty(exports, \"WebAuthnSigner\", { enumerable: true, get: function () { return webauthn_1.WebAuthnSigner; } });\n","export const UnknownError = {\n error: 'Unknown error',\n message: 'An unknown error occurred'\n};\nexport const NotSupportedError = {\n error: 'NotSupported',\n message: 'Passkeys are not supported on this device. iOS 15 or Android SDK 28 and above is required to use Passkeys'\n};\nexport const RequestFailedError = {\n error: 'RequestFailed',\n message: 'The request failed. No Credentials were returned.'\n};\nexport const UserCancelledError = {\n error: 'UserCancelled',\n message: 'The user cancelled the request.'\n};\nexport const InvalidChallengeError = {\n error: 'InvalidChallenge',\n message: 'The provided challenge was invalid'\n};\nexport const InvalidUserIdError = {\n error: 'InvalidUserId',\n message: 'The provided userId was invalid'\n};\nexport const BadConfiguration = {\n error: 'BadConfiguration',\n message: 'Your app is not properly configured. Refer to the docs for help.'\n};\nexport const NoCredentialsError = {\n error: 'NoCredentials',\n message: 'No viable credential is available for the user.'\n};\nexport const InterruptedError = {\n error: 'Interrupted',\n message: 'The operation was interrupted and may be retried.'\n};\nexport const TimeoutError = {\n error: 'TimedOut',\n message: 'The operation timed out.'\n};\nexport const NativeError = (message = 'An unknown error occurred') => {\n return {\n error: 'Native error',\n message: message\n };\n};\nexport function handleNativeError(_error) {\n if (typeof _error !== 'object') {\n return UnknownError;\n }\n const error = String(_error).split(' ')[1];\n switch (error) {\n case 'NotSupported':\n {\n return NotSupportedError;\n }\n case 'RequestFailed':\n {\n return RequestFailedError;\n }\n case 'UserCancelled':\n {\n return UserCancelledError;\n }\n case 'InvalidChallenge':\n {\n return InvalidChallengeError;\n }\n case 'BadConfiguration':\n {\n return BadConfiguration;\n }\n case 'Interrupted':\n {\n return InterruptedError;\n }\n case 'NoCredentials':\n {\n return NoCredentialsError;\n }\n case 'TimedOut':\n {\n return TimeoutError;\n }\n case 'UnknownError':\n {\n return UnknownError;\n }\n default:\n {\n return NativeError(String(_error));\n }\n }\n}\n//# sourceMappingURL=PasskeyError.js.map","import { NativeModules, Platform } from 'react-native';\nconst LINKING_ERROR = \"The package 'react-native-passkey' doesn't seem to be linked. Make sure: \\n\\n\" + Platform.select({\n ios: \"- You have run 'pod install'\\n\",\n default: ''\n}) + '- You rebuilt the app after installing the package\\n' + '- You are not using Expo managed workflow\\n';\nexport const NativePasskey = NativeModules.Passkey ? NativeModules.Passkey : new Proxy({}, {\n get() {\n throw new Error(LINKING_ERROR);\n }\n});\n//# sourceMappingURL=NativePasskey.js.map","import { handleNativeError, NotSupportedError } from './PasskeyError';\nimport { Platform } from 'react-native';\nimport { NativePasskey } from './NativePasskey';\nexport class Passkey {\n /**\n * Creates a new Passkey\n *\n * @param request The FIDO2 Attestation Request in JSON format\n * @param options An object containing options for the registration process\n * @returns The FIDO2 Attestation Result in JSON format\n * @throws\n */\n static async create(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.create(JSON.stringify(request), false,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Creates a new Passkey\n * Forces the usage of a platform authenticator on iOS\n *\n * @param request The FIDO2 Attestation Request in JSON format\n * @param options An object containing options for the registration process\n * @returns The FIDO2 Attestation Result in JSON format\n * @throws\n */\n static async createPlatformKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.create(JSON.stringify(request), true,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Creates a new Passkey\n * Forces the usage of a security authenticator on iOS\n *\n * @param request The FIDO2 Attestation Request in JSON format\n * @param options An object containing options for the registration process\n * @returns The FIDO2 Attestation Result in JSON format\n * @throws\n */\n static async createSecurityKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.create(JSON.stringify(request), false,\n // forcePlatformKey\n true // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Authenticates using an existing Passkey\n *\n * @param request The FIDO2 Assertion Request in JSON format\n * @param options An object containing options for the authentication process\n * @returns The FIDO2 Assertion Result in JSON format\n * @throws\n */\n static async get(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.get(JSON.stringify(request), false,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Authenticates using an existing Passkey\n * Forces the usage of a platform authenticator on iOS\n *\n * @param request The FIDO2 Assertion Request in JSON format\n * @param options An object containing options for the authentication process\n * @returns The FIDO2 Assertion Result in JSON format\n * @throws\n */\n static async getPlatformKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.get(JSON.stringify(request), true,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Authenticates using an existing Passkey\n * Forces the usage of a security authenticator on iOS\n *\n * @param request The FIDO2 Assertion Request in JSON format\n * @param options An object containing options for the authentication process\n * @returns The FIDO2 Assertion Result in JSON format\n * @throws\n */\n static async getSecurityKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.get(JSON.stringify(request), false,\n // forcePlatformKey\n true // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Checks if Passkeys are supported on the current device\n *\n * @returns A boolean indicating whether Passkeys are supported\n */\n static isSupported() {\n if (Platform.OS === 'android') {\n return Platform.Version > 28;\n }\n if (Platform.OS === 'ios') {\n return parseInt(Platform.Version, 10) >= 15;\n }\n return false;\n }\n}\n//# sourceMappingURL=Passkey.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PasskeysSigner = exports.DEFAULT_WAIT_TIMEOUT = void 0;\nconst sdk_1 = require(\"@dfns/sdk\");\nconst utils_1 = require(\"@dfns/sdk/utils\");\nconst react_native_1 = require(\"react-native\");\nconst react_native_passkey_1 = require(\"react-native-passkey\");\nexports.DEFAULT_WAIT_TIMEOUT = 60000;\nclass AndroidPasskeys {\n constructor(conf) {\n this.conf = conf;\n if (!this.conf?.relyingParty?.id || !this.conf?.relyingParty?.name) {\n throw new sdk_1.DfnsError(-1, 'Relying party ID and name must be specified in the WebauthnSigner initializer');\n }\n }\n async sign(challenge) {\n const request = {\n challenge: challenge.challenge,\n allowCredentials: challenge.allowCredentials.webauthn,\n rpId: this.conf.relyingParty.id,\n userVerification: challenge.userVerification,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const credential = await react_native_passkey_1.Passkey.get(request);\n return {\n kind: 'Fido2',\n credentialAssertion: {\n credId: credential.id,\n clientData: credential.response.clientDataJSON,\n authenticatorData: credential.response.authenticatorData,\n signature: credential.response.signature,\n userHandle: credential.response.userHandle,\n },\n };\n }\n async create(challenge) {\n const request = {\n challenge: challenge.challenge,\n pubKeyCredParams: challenge.pubKeyCredParams,\n rp: this.conf.relyingParty,\n user: {\n displayName: challenge.user.displayName,\n id: (0, utils_1.toBase64Url)(challenge.user.id),\n name: challenge.user.name,\n },\n attestation: challenge.attestation,\n excludeCredentials: challenge.excludeCredentials?.map((v) => ({\n id: v.id,\n type: v.type,\n })),\n authenticatorSelection: challenge.authenticatorSelection,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const result = await react_native_passkey_1.Passkey.create(request);\n return {\n credentialKind: 'Fido2',\n credentialInfo: {\n credId: result.id,\n attestationData: result.response.attestationObject,\n clientData: result.response.clientDataJSON,\n },\n };\n }\n}\nclass iOSPasskeys {\n constructor(conf) {\n this.conf = conf;\n if (!this.conf?.relyingParty?.id || !this.conf?.relyingParty?.name) {\n throw new sdk_1.DfnsError(-1, 'Relying party ID and name must be specified in the WebauthnSigner initializer');\n }\n }\n async sign(challenge) {\n const request = {\n challenge: challenge.challenge,\n allowCredentials: challenge.allowCredentials.webauthn,\n rpId: this.conf.relyingParty.id,\n userVerification: 'preferred',\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const credential = await react_native_passkey_1.Passkey.get(request);\n return {\n kind: 'Fido2',\n credentialAssertion: {\n credId: credential.id,\n clientData: credential.response.clientDataJSON,\n authenticatorData: credential.response.authenticatorData,\n signature: credential.response.signature,\n userHandle: credential.response.userHandle,\n },\n };\n }\n async create(challenge) {\n const request = {\n challenge: challenge.challenge,\n pubKeyCredParams: challenge.pubKeyCredParams,\n rp: this.conf.relyingParty,\n user: {\n displayName: challenge.user.displayName,\n id: (0, utils_1.toBase64Url)(challenge.user.id),\n name: challenge.user.name,\n },\n attestation: challenge.attestation,\n excludeCredentials: challenge.excludeCredentials,\n authenticatorSelection: challenge.authenticatorSelection,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const result = await react_native_passkey_1.Passkey.create(request);\n return {\n credentialKind: 'Fido2',\n credentialInfo: {\n credId: result.id,\n attestationData: result.response.attestationObject,\n clientData: result.response.clientDataJSON,\n },\n };\n }\n}\nclass PasskeysSigner {\n constructor(conf) {\n switch (react_native_1.Platform.OS) {\n case 'android':\n this.platform = new AndroidPasskeys(conf);\n break;\n case 'ios':\n this.platform = new iOSPasskeys(conf);\n break;\n default:\n throw new sdk_1.DfnsError(-1, `${react_native_1.Platform.OS} is not supported`);\n }\n }\n async sign(challenge) {\n return this.platform.sign(challenge);\n }\n async create(challenge) {\n return this.platform.create(challenge);\n }\n}\nexports.PasskeysSigner = PasskeysSigner;\n"],"names":["TRANSACTION_FORMATS","DfnsError","Signature","AbstractSigner","computeAddress","resolveProperties","resolveAddress","getAddress","Transaction","toUtf8Bytes","keccak256","TransactionSigningErrorCode","TransactionStatus","JsonRpcProvider","this","require$$0","ieee754","require$$1","require$$3","fetch_1","types","baseAuthApi_1","require$$2","client","userActionFetch_1","url_1","delegatedClient","auth_1","exchanges_1","feeSponsors_1","keys_1","networks_1","require$$4","permissions_1","require$$5","policies_1","require$$6","signers_1","require$$7","require$$8","wallets_1","require$$9","webhooks_1","require$$10","require$$11","require$$12","require$$13","crypto_1","buffer_1","Platform","NativeModules"],"mappings":"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","x_google_ignoreList":[22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102]}
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../src/platform/HttpClient.ts","../src/platform/ConfigProvider.ts","../src/core/AuthenticationService.ts","../src/core/WalletService.ts","../src/core/SigningService.ts","../src/config/constants.ts","../src/core/PersService.ts","../src/core/HealthService.ts","../src/core/KeyWallet.ts","../src/types/error-types.ts","../src/transaction/TransactionErrorHandler.ts","../src/transaction/TransactionValidator.ts","../src/transaction/WebAuthnCoordinator.ts","../src/types/transaction-types.ts","../src/transaction/TransactionSigningService.ts","../src/transaction/TransactionSubmissionHandler.ts","../src/platform/WebAuthnProvider.browser.ts","../src/platform/WebAuthnProvider.reactnative.ts","../src/utils/jwt.ts","../src/utils/user-cache.ts","../src/sdk/PersSignerSDK.ts","../../../node_modules/cross-fetch/dist/browser-ponyfill.js","../node_modules/@dfns/sdk/dfnsError.js","../../../node_modules/base64-js/index.js","../../../node_modules/ieee754/index.js","../../../node_modules/buffer/index.js","../node_modules/@dfns/sdk/utils/base64.js","../node_modules/@dfns/sdk/utils/authToken.js","../node_modules/@dfns/sdk/utils/fetch.js","../node_modules/@dfns/sdk/baseAuthApi.js","../node_modules/@dfns/sdk/generated/auth/types.js","../node_modules/@dfns/sdk/utils/userActionFetch.js","../node_modules/@dfns/sdk/utils/url.js","../node_modules/@dfns/sdk/generated/auth/client.js","../node_modules/@dfns/sdk/generated/auth/delegatedClient.js","../node_modules/@dfns/sdk/generated/auth/index.js","../node_modules/@dfns/sdk/generated/exchanges/types.js","../node_modules/@dfns/sdk/generated/exchanges/client.js","../node_modules/@dfns/sdk/generated/exchanges/delegatedClient.js","../node_modules/@dfns/sdk/generated/exchanges/index.js","../node_modules/@dfns/sdk/generated/feeSponsors/types.js","../node_modules/@dfns/sdk/generated/feeSponsors/client.js","../node_modules/@dfns/sdk/generated/feeSponsors/delegatedClient.js","../node_modules/@dfns/sdk/generated/feeSponsors/index.js","../node_modules/@dfns/sdk/generated/keys/types.js","../node_modules/@dfns/sdk/generated/keys/client.js","../node_modules/@dfns/sdk/generated/keys/delegatedClient.js","../node_modules/@dfns/sdk/generated/keys/index.js","../node_modules/@dfns/sdk/generated/networks/types.js","../node_modules/@dfns/sdk/generated/networks/client.js","../node_modules/@dfns/sdk/generated/networks/delegatedClient.js","../node_modules/@dfns/sdk/generated/networks/index.js","../node_modules/@dfns/sdk/generated/permissions/types.js","../node_modules/@dfns/sdk/generated/permissions/client.js","../node_modules/@dfns/sdk/generated/permissions/delegatedClient.js","../node_modules/@dfns/sdk/generated/permissions/index.js","../node_modules/@dfns/sdk/generated/policies/types.js","../node_modules/@dfns/sdk/generated/policies/client.js","../node_modules/@dfns/sdk/generated/policies/delegatedClient.js","../node_modules/@dfns/sdk/generated/policies/index.js","../node_modules/@dfns/sdk/generated/signers/types.js","../node_modules/@dfns/sdk/generated/signers/client.js","../node_modules/@dfns/sdk/generated/signers/delegatedClient.js","../node_modules/@dfns/sdk/generated/signers/index.js","../node_modules/@dfns/sdk/generated/staking/types.js","../node_modules/@dfns/sdk/generated/staking/client.js","../node_modules/@dfns/sdk/generated/staking/delegatedClient.js","../node_modules/@dfns/sdk/generated/staking/index.js","../node_modules/@dfns/sdk/generated/wallets/types.js","../node_modules/@dfns/sdk/generated/wallets/client.js","../node_modules/@dfns/sdk/generated/wallets/delegatedClient.js","../node_modules/@dfns/sdk/generated/wallets/index.js","../node_modules/@dfns/sdk/generated/webhooks/types.js","../node_modules/@dfns/sdk/generated/webhooks/client.js","../node_modules/@dfns/sdk/generated/webhooks/delegatedClient.js","../node_modules/@dfns/sdk/generated/webhooks/index.js","../node_modules/@dfns/sdk/generated/swaps/types.js","../node_modules/@dfns/sdk/generated/swaps/client.js","../node_modules/@dfns/sdk/generated/swaps/delegatedClient.js","../node_modules/@dfns/sdk/generated/swaps/index.js","../node_modules/@dfns/sdk/generated/agreements/types.js","../node_modules/@dfns/sdk/generated/agreements/client.js","../node_modules/@dfns/sdk/generated/agreements/delegatedClient.js","../node_modules/@dfns/sdk/generated/agreements/index.js","../node_modules/@dfns/sdk/generated/allocations/client.js","../node_modules/@dfns/sdk/dfnsApiClient.js","../node_modules/@dfns/sdk/dfnsAuthenticator.js","../node_modules/@dfns/sdk/dfnsDelegatedApiClient.js","../node_modules/@dfns/sdk/signer.js","../node_modules/@dfns/sdk/store.js","../node_modules/@dfns/sdk/index.js","../node_modules/@dfns/sdk/utils/bigint.js","../node_modules/@dfns/sdk/utils/string.js","../node_modules/@dfns/sdk/utils/crypto.js","../node_modules/@dfns/sdk/utils/index.js","../node_modules/@dfns/sdk-browser/signers/key.js","../node_modules/@dfns/sdk-browser/signers/webauthn.js","../node_modules/@dfns/sdk-browser/index.js","../../../node_modules/react-native-passkey/lib/module/PasskeyError.js","../../../node_modules/react-native-passkey/lib/module/NativePasskey.js","../../../node_modules/react-native-passkey/lib/module/Passkey.js","../node_modules/@dfns/sdk-react-native/index.js"],"sourcesContent":["/**\r\n * Platform-agnostic HTTP client abstraction\r\n * Provides a consistent interface for HTTP requests across platforms\r\n */\r\n\r\nexport interface HttpResponse<T = any> {\r\n data: T;\r\n status: number;\r\n statusText: string;\r\n headers: Record<string, string>;\r\n}\r\n\r\nexport interface HttpRequestOptions {\r\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\r\n headers?: Record<string, string>;\r\n body?: any;\r\n timeout?: number;\r\n}\r\n\r\nexport interface HttpClient {\r\n request<T = any>(url: string, options: HttpRequestOptions): Promise<HttpResponse<T>>;\r\n get<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n post<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n put<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n delete<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>>;\r\n}\r\n\r\n/**\r\n * Fetch-based HTTP client for web environments\r\n */\r\nexport class FetchHttpClient implements HttpClient {\r\n private defaultHeaders: Record<string, string> = {\r\n 'content-type': 'application/json',\r\n };\r\n\r\n async request<T = any>(url: string, options: HttpRequestOptions): Promise<HttpResponse<T>> {\r\n const headers = { ...this.defaultHeaders, ...options.headers };\r\n \r\n const fetchOptions: RequestInit = {\r\n method: options.method,\r\n headers,\r\n };\r\n\r\n if (options.body && options.method !== 'GET') {\r\n fetchOptions.body = typeof options.body === 'string' \r\n ? options.body \r\n : JSON.stringify(options.body);\r\n }\r\n\r\n // Add timeout support if provided\r\n if (options.timeout) {\r\n const controller = new AbortController();\r\n fetchOptions.signal = controller.signal;\r\n setTimeout(() => controller.abort(), options.timeout);\r\n }\r\n\r\n const response = await fetch(url, fetchOptions);\r\n \r\n // Check if response is actually JSON before parsing\r\n const responseText = await response.text();\r\n \r\n let data: T;\r\n try {\r\n data = JSON.parse(responseText) as T;\r\n } catch (parseError) {\r\n console.error('[HttpClient] JSON parse error:', parseError);\r\n console.error('[HttpClient] Failed to parse response text:', responseText);\r\n throw new Error(`Failed to parse JSON response: ${parseError instanceof Error ? parseError.message : 'Unknown error'}`);\r\n }\r\n\r\n return {\r\n data,\r\n status: response.status,\r\n statusText: response.statusText,\r\n headers: Object.fromEntries(response.headers.entries()),\r\n };\r\n }\r\n\r\n async get<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'GET', headers });\r\n }\r\n\r\n async post<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'POST', body: data, headers });\r\n }\r\n\r\n async put<T = any>(url: string, data?: any, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'PUT', body: data, headers });\r\n }\r\n\r\n async delete<T = any>(url: string, headers?: Record<string, string>): Promise<HttpResponse<T>> {\r\n return this.request<T>(url, { method: 'DELETE', headers });\r\n }\r\n}\r\n\r\n/**\r\n * Global HTTP client instance\r\n */\r\nlet globalHttpClient: HttpClient | null = null;\r\n\r\n/**\r\n * Set the global HTTP client\r\n */\r\nexport function setHttpClient(client: HttpClient): void {\r\n globalHttpClient = client;\r\n}\r\n\r\n/**\r\n * Get the current HTTP client\r\n */\r\nexport function getHttpClient(): HttpClient {\r\n if (!globalHttpClient) {\r\n // Auto-initialize with fetch client for web environments\r\n globalHttpClient = new FetchHttpClient();\r\n }\r\n return globalHttpClient;\r\n}","/**\r\n * Platform-agnostic configuration provider\r\n * Abstracts environment variable access for cross-platform compatibility\r\n */\r\n\r\nexport interface PlatformConfig {\r\n apiUrl: string;\r\n appId?: string;\r\n relyingParty: {\r\n id: string;\r\n name: string;\r\n origin?: string;\r\n };\r\n}\r\n\r\nexport interface ConfigProvider {\r\n getServiceConfig(): PlatformConfig;\r\n}\r\n\r\n/**\r\n * Web platform configuration provider\r\n * Uses provided configuration instead of environment variables\r\n */\r\nexport class WebConfigProvider implements ConfigProvider {\r\n constructor(private config: PlatformConfig) {}\r\n\r\n getServiceConfig(): PlatformConfig {\r\n return this.config;\r\n }\r\n}\r\n\r\n/**\r\n * React Native configuration provider\r\n * Uses process.env or custom config for React Native environments\r\n */\r\nexport class ReactNativeConfigProvider implements ConfigProvider {\r\n constructor(private config: PlatformConfig) {}\r\n\r\n getServiceConfig(): PlatformConfig {\r\n return this.config;\r\n }\r\n}\r\n\r\n/**\r\n * Static configuration provider for testing or custom setups\r\n */\r\nexport class StaticConfigProvider implements ConfigProvider {\r\n constructor(private config: PlatformConfig) {}\r\n\r\n getServiceConfig(): PlatformConfig {\r\n return this.config;\r\n }\r\n}\r\n\r\n/**\r\n * Global config provider instance\r\n */\r\nlet globalConfigProvider: ConfigProvider | null = null;\r\n\r\n/**\r\n * Set the global configuration provider\r\n */\r\nexport function setConfigProvider(provider: ConfigProvider): void {\r\n globalConfigProvider = provider;\r\n}\r\n\r\n/**\r\n * Get the current configuration provider\r\n * Requires explicit initialization with setConfigProvider\r\n */\r\nexport function getConfigProvider(): ConfigProvider {\r\n if (!globalConfigProvider) {\r\n throw new Error('Configuration provider not initialized. Call setConfigProvider() first with your configuration.');\r\n }\r\n return globalConfigProvider;\r\n}\r\n\r\n/**\r\n * Get the service configuration\r\n */\r\nexport function getServiceConfig(): PlatformConfig {\r\n return getConfigProvider().getServiceConfig();\r\n}","import { getHttpClient } from '../platform/HttpClient';\r\nimport { getServiceConfig } from '../platform/ConfigProvider';\r\nimport { \r\n LoginRequest,\r\n LoginResponse,\r\n JWTLoginResponse,\r\n WrappedProviderResponse,\r\n VerifyTokenRequest,\r\n VerifyTokenResponse,\r\n InitRegistrationRequest,\r\n InitRegistrationResponse,\r\n CompleteRegistrationWithChallengeRequest,\r\n CompleteRegistrationResponse\r\n} from '../types/signer-api-types';\r\nimport { PersSignerConfig } from '../shared';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\n\r\n\r\n/**\r\n * Authenticated user with all required tokens\r\n */\r\n interface SignerAuthenticatedUser {\r\n identifier: string;\r\n signerAuthToken: string;\r\n persAccessToken: string;\r\n}\r\n\r\n export interface AuthenticationResult {\r\n user: SignerAuthenticatedUser;\r\n isExpired: boolean;\r\n}\r\n\r\n/**\r\n * Authentication service for user login and registration\r\n * Uses constructor-based dependency injection for WebAuthn provider\r\n * Updated for new v1 API endpoints\r\n */\r\nexport class AuthenticationService {\r\n private signerToken: string | null = null;\r\n\r\n private config: PersSignerConfig;\r\n private webAuthnProvider: WebAuthnProvider;\r\n \r\n constructor(config: PersSignerConfig) {\r\n this.config = config;\r\n this.webAuthnProvider = config.webAuthnProvider;\r\n }\r\n\r\n /**\r\n * Login with PERS token to get signer JWT\r\n * @param persToken - PERS JWT from PERS authentication\r\n * @returns Promise resolving to login response or provider challenge data\r\n */\r\n async loginWithPersToken(persToken: string): Promise<JWTLoginResponse | unknown> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const requestBody: LoginRequest = {\r\n authToken: persToken\r\n };\r\n\r\n const response = await httpClient.post<LoginResponse>(\r\n `${config.apiUrl}/auth/login`,\r\n requestBody\r\n // Note: Login endpoint doesn't require Authorization header (public endpoint)\r\n );\r\n \r\n const backendResponse = response.data;\r\n \r\n if (backendResponse && backendResponse.success) {\r\n // Check if it's JWT response or wrapped provider response\r\n if ('access_token' in backendResponse) {\r\n // JWT response - set token and return\r\n this.signerToken = backendResponse.access_token;\r\n return backendResponse as JWTLoginResponse;\r\n } else {\r\n // Wrapped provider response - return the data\r\n return (backendResponse as WrappedProviderResponse).data;\r\n }\r\n }\r\n \r\n console.error('[AuthenticationService] Invalid response - no success or success=false:', backendResponse);\r\n throw new Error('Login failed: Invalid response format');\r\n } catch (error) {\r\n // console.error(`[AuthenticationService] PERS token login failed:`, error);\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Verify signer token validity\r\n * @param token - Signer JWT to verify\r\n * @returns Promise resolving to verification result\r\n */\r\n async verifyToken(token: string): Promise<VerifyTokenResponse> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const requestBody: VerifyTokenRequest = {\r\n token\r\n };\r\n\r\n const response = await httpClient.post<VerifyTokenResponse>(\r\n `${config.apiUrl}/auth/verify`,\r\n requestBody,\r\n { Authorization: `Bearer ${token}` }\r\n );\r\n \r\n const verifyData = response.data;\r\n \r\n if (!verifyData.valid) {\r\n throw new Error('Token verification failed');\r\n }\r\n \r\n return verifyData;\r\n } catch (error) {\r\n console.error(`[AuthenticationService] Token verification failed:`, error);\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Initialize user registration\r\n * @param persToken - PERS JWT token (registration is public)\r\n * @returns Promise resolving to registration challenge\r\n */\r\n async initializeRegistration(persToken: string): Promise<unknown> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const requestBody: InitRegistrationRequest = {\r\n authToken: persToken\r\n };\r\n\r\n const response = await httpClient.post<InitRegistrationResponse>(\r\n `${config.apiUrl}/auth/register/init`,\r\n requestBody\r\n );\r\n \r\n const backendResponse = response.data;\r\n \r\n if (backendResponse.success && backendResponse.data) {\r\n return backendResponse.data;\r\n }\r\n \r\n throw new Error('Registration initialization failed: No data returned');\r\n } catch (error) {\r\n // console.error(`[AuthenticationService] Registration initialization failed:`, error);\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Get current signer token\r\n * @returns The current signer JWT token\r\n */\r\n getSignerToken(): string | null {\r\n return this.signerToken;\r\n }\r\n\r\n /**\r\n * Set signer token (for external token management)\r\n * @param token - Signer JWT token\r\n */\r\n setSignerToken(token: string): void {\r\n this.signerToken = token;\r\n }\r\n\r\n /**\r\n * Complete registration with WebAuthn challenge data (v1 API format)\r\n * @param tmpAuthToken - Temporary auth token from init registration (temporaryAuthenticationToken)\r\n * @param signedChallenge - WebAuthn credential response (will be restructured for backend)\r\n * @param persToken - PERS JWT token (authToken)\r\n * @returns Promise resolving to registration result\r\n */\r\n async completeRegistrationWithChallenge(\r\n tmpAuthToken: string | null, \r\n signedChallenge: any, \r\n persToken: string\r\n ): Promise<JWTLoginResponse | unknown> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const requestBody: CompleteRegistrationWithChallengeRequest = {\r\n temporaryAuthenticationToken: tmpAuthToken,\r\n signedChallenge: {\r\n firstFactorCredential: {\r\n credentialKind: signedChallenge.credentialKind || \"Fido2\",\r\n credentialInfo: {\r\n credId: signedChallenge.credentialInfo?.credId || \"\",\r\n clientData: signedChallenge.credentialInfo?.clientData || \"\",\r\n attestationData: signedChallenge.credentialInfo?.attestationData || \"\"\r\n }\r\n }\r\n },\r\n authToken: persToken\r\n };\r\n\r\n const response = await httpClient.post<CompleteRegistrationResponse>(\r\n `${config.apiUrl}/auth/register/complete`,\r\n requestBody\r\n );\r\n \r\n const backendResponse = response.data;\r\n \r\n if (backendResponse && backendResponse.success) {\r\n // Check if it's JWT response (has access_token at root level) or wrapped provider response\r\n if ('access_token' in backendResponse) {\r\n // JWT response - set token and return\r\n this.signerToken = backendResponse.access_token;\r\n return backendResponse as JWTLoginResponse;\r\n } else if ('data' in backendResponse) {\r\n // Wrapped provider response - registration is not complete yet, needs more steps\r\n return (backendResponse as WrappedProviderResponse).data;\r\n } else {\r\n // Wrapped provider response - return the data\r\n return (backendResponse as WrappedProviderResponse).data;\r\n }\r\n }\r\n \r\n console.error('[AuthenticationService] Registration with challenge failed - invalid response:', backendResponse);\r\n throw new Error('Registration completion with challenge failed');\r\n } catch (error) {\r\n console.error(`[AuthenticationService] Registration completion with challenge failed:`, error);\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Combined authentication flow - handles both login and registration\r\n * @param identifier - User identifier (email/userId)\r\n * @param persAccessToken - PERS JWT token for authentication\r\n * @param webAuthnProvider - WebAuthn provider for credential creation\r\n * @param relyingPartyConfig - Configuration for WebAuthn relying party\r\n * @returns Promise resolving to authenticated user with signer token\r\n */\r\n public async combinedAuthentication(identifier: string, persAccessToken: string): Promise<SignerAuthenticatedUser> {\r\n try {\r\n // Step 1: Try to login with PERS token first (this will get signer JWT if user exists)\r\n let signerToken: string;\r\n \r\n try {\r\n const loginResult = await this.loginWithPersToken(persAccessToken);\r\n \r\n // Extract token from login result\r\n if (loginResult && typeof loginResult === 'object' && 'access_token' in loginResult) {\r\n signerToken = (loginResult as any).access_token;\r\n } else {\r\n throw new Error('Invalid login response format');\r\n }\r\n } catch (loginError) {\r\n \r\n // Step 2: User doesn't exist - register with v1 API\r\n // 2a. Initialize registration \r\n const initResult = await this.initializeRegistration(persAccessToken);\r\n \r\n let signedChallenge: any = null;\r\n let tmpAuthToken: string | null = null;\r\n \r\n // 2b. Create WebAuthn credential using the challenge (if available)\r\n if (initResult && typeof initResult === 'object') {\r\n // Extract challenge and tmpAuthToken from init result with better type safety\r\n const initData = initResult as { \r\n challenge?: any; \r\n temporaryAuthenticationToken?: string; \r\n tmpAuthToken?: string; \r\n user?: any;\r\n attestation?: string;\r\n authenticatorSelection?: any;\r\n excludeCredentials?: any[];\r\n pubKeyCredParams?: any[];\r\n };\r\n const challenge = initData.challenge;\r\n tmpAuthToken = initData.temporaryAuthenticationToken || initData.tmpAuthToken || null;\r\n \r\n if (challenge && initData.user) {\r\n // Construct proper WebAuthn credential creation options\r\n const credentialCreationOptions = {\r\n challenge: challenge,\r\n rp: {\r\n name: this.config.relyingPartyName || 'PERS Signer',\r\n id: typeof window !== 'undefined' ? window.location.hostname : 'localhost'\r\n },\r\n user: {\r\n id: initData.user.id,\r\n name: initData.user.name,\r\n displayName: initData.user.displayName\r\n },\r\n pubKeyCredParams: initData.pubKeyCredParams || [\r\n { alg: -7, type: \"public-key\" },\r\n { alg: -257, type: \"public-key\" }\r\n ],\r\n authenticatorSelection: initData.authenticatorSelection || {},\r\n attestation: initData.attestation || \"direct\",\r\n excludeCredentials: initData.excludeCredentials || []\r\n };\r\n \r\n signedChallenge = await this.webAuthnProvider.create(credentialCreationOptions);\r\n } else {\r\n console.warn(`[PersSignerSDK] Missing challenge or user data in init result`);\r\n }\r\n }\r\n \r\n // 2c. Complete registration with proper challenge data - call AuthenticationService directly\r\n const completeResult = await this.completeRegistrationWithChallenge(\r\n tmpAuthToken, \r\n signedChallenge, \r\n persAccessToken\r\n );\r\n \r\n // Extract token from registration result\r\n if (completeResult && typeof completeResult === 'object') {\r\n // Check if this is a complete JWT response with access_token\r\n if ('access_token' in completeResult) {\r\n signerToken = (completeResult as any).access_token;\r\n } else {\r\n // This is a wrapped provider response - registration is not complete\r\n // We have user created and wallet created, but need to get JWT token\r\n \r\n // For now, throw an error indicating we need additional backend integration steps\r\n throw new Error('Registration created user and wallet but JWT token not provided. Backend integration incomplete.');\r\n }\r\n } else {\r\n throw new Error('Registration completed but no response received');\r\n }\r\n }\r\n \r\n return {\r\n identifier,\r\n signerAuthToken: signerToken,\r\n persAccessToken\r\n };\r\n } catch (error) {\r\n console.error(`[PersSignerSDK] Combined authentication failed for ${identifier}:`, error);\r\n throw new Error(`Combined authentication failed: ${error}`);\r\n }\r\n }\r\n}","import { getHttpClient } from '../platform/HttpClient';\r\nimport { getServiceConfig } from '../platform/ConfigProvider';\r\nimport { \r\n ListWalletsRequest,\r\n ListWalletsResponse\r\n} from '../types/signer-api-types';\r\n\r\n/**\r\n * Wallet management service\r\n * Updated for v1 API endpoints per migration reference\r\n */\r\nexport class WalletService {\r\n \r\n /**\r\n * List all wallets for authenticated user\r\n * @param signerToken - Signer JWT token\r\n * @returns Promise resolving to wallet data\r\n */\r\n static async listWallets(signerToken: string): Promise<unknown> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const requestBody: ListWalletsRequest = {};\r\n\r\n const response = await httpClient.post<ListWalletsResponse>(\r\n `${config.apiUrl}/wallets/list`,\r\n requestBody,\r\n { Authorization: `Bearer ${signerToken}` }\r\n );\r\n \r\n const backendResponse = response.data;\r\n \r\n if (backendResponse.success && backendResponse.data) {\r\n return backendResponse.data;\r\n }\r\n \r\n throw new Error('Failed to list wallets: Invalid response');\r\n } catch (error) {\r\n console.error('[WalletService] Error listing wallets:', error);\r\n throw error;\r\n }\r\n }\r\n}","import { getHttpClient } from '../platform/HttpClient';\r\nimport { getServiceConfig } from '../platform/ConfigProvider';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\nimport { \r\n SigningRequest,\r\n HashSigningRequest,\r\n TypedDataSigningRequest \r\n} from '../types/key-service-types';\r\nimport { \r\n InitSignatureRequest,\r\n InitSignatureResponse,\r\n CompleteSignatureRequest,\r\n CompleteSignatureResponse\r\n} from '../types/signer-api-types';\r\n\r\n/**\r\n * Signing service for cryptographic operations\r\n * Handles hash signing and typed data signing with WebAuthn\r\n * Uses constructor-based dependency injection for WebAuthn provider\r\n */\r\nexport class SigningService {\r\n private webAuthnProvider: WebAuthnProvider;\r\n\r\n constructor(webAuthnProvider: WebAuthnProvider) {\r\n this.webAuthnProvider = webAuthnProvider;\r\n }\r\n \r\n /**\r\n * Sign a hash using the specified wallet\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param hash - Hash to sign\r\n * @returns Promise resolving to signature response\r\n */\r\n async signHash(\r\n authToken: string,\r\n walletId: string,\r\n hash: string\r\n ): Promise<CompleteSignatureResponse['data']> {\r\n const request: HashSigningRequest = {\r\n kind: \"Hash\",\r\n hash,\r\n };\r\n return await this.signRequest(authToken, walletId, request);\r\n }\r\n\r\n /**\r\n * Sign EIP-712 typed data using the specified wallet\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param domain - EIP-712 domain\r\n * @param types - EIP-712 types definition\r\n * @param value - Data to sign\r\n * @returns Promise resolving to signature response\r\n */\r\n async signTypedData(\r\n authToken: string,\r\n walletId: string,\r\n domain: any,\r\n types: Record<string, any[]>,\r\n value: Record<string, any>\r\n ): Promise<CompleteSignatureResponse['data']> {\r\n const request: TypedDataSigningRequest = {\r\n blockchainKind: \"Evm\",\r\n kind: \"Eip712\",\r\n types,\r\n domain,\r\n message: value\r\n };\r\n return await this.signRequest(authToken, walletId, request);\r\n }\r\n\r\n /**\r\n * Generic signing method that handles the complete signing flow\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param request - Signing request object\r\n * @returns Promise resolving to signature response\r\n */\r\n private async signRequest(\r\n authToken: string,\r\n walletId: string,\r\n request: SigningRequest\r\n ): Promise<CompleteSignatureResponse['data']> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n // Step 1: Initialize signing and get challenge\r\n const initRequest: InitSignatureRequest = {\r\n walletId,\r\n request\r\n };\r\n const initResponse = await httpClient.post<InitSignatureResponse>(\r\n `${config.apiUrl}/wallets/signatures/init`,\r\n initRequest,\r\n { Authorization: `Bearer ${authToken}` }\r\n );\r\n \r\n const backendInitResponse = initResponse.data;\r\n \r\n if (!backendInitResponse.success || !backendInitResponse.data) {\r\n console.error('[SigningService] Init response invalid:', backendInitResponse);\r\n throw new Error('Signature initialization failed');\r\n }\r\n \r\n const { requestBody, challenge } = backendInitResponse.data;\r\n\r\n // Step 2: Sign the challenge using WebAuthn\r\n const assertion = await this.webAuthnProvider.sign(challenge);\r\n\r\n // Step 3: Complete signing with signed challenge\r\n const completeRequest: CompleteSignatureRequest = {\r\n walletId,\r\n requestBody,\r\n signedChallenge: {\r\n challengeIdentifier: (challenge as any)?.challengeIdentifier,\r\n firstFactor: assertion,\r\n }\r\n };\r\n \r\n const completeResponse = await httpClient.post<CompleteSignatureResponse>(\r\n `${config.apiUrl}/wallets/signatures/complete`,\r\n completeRequest,\r\n { Authorization: `Bearer ${authToken}` }\r\n );\r\n\r\n const backendCompleteResponse = completeResponse.data;\r\n if (!backendCompleteResponse.success || !backendCompleteResponse.data) {\r\n console.error('[SigningService] Complete response invalid:', backendCompleteResponse);\r\n throw new Error('Signature completion failed');\r\n }\r\n \r\n // Return the complete signature data from backend response\r\n return backendCompleteResponse.data;\r\n } catch (error) {\r\n console.error(`[SigningService] Signing failed for wallet ${walletId}:`, error);\r\n throw error;\r\n }\r\n }\r\n \r\n /**\r\n * Sign multiple requests in batch (when backend supports it)\r\n * @param authToken - Authentication token\r\n * @param walletId - Wallet identifier\r\n * @param requests - Array of signing requests\r\n * @returns Promise resolving to array of signature responses\r\n */\r\n async signBatch(\r\n authToken: string,\r\n walletId: string,\r\n requests: SigningRequest[]\r\n ): Promise<CompleteSignatureResponse['data'][]> {\r\n // For now, process sequentially. Could be optimized for parallel processing\r\n const results: CompleteSignatureResponse['data'][] = [];\r\n \r\n for (const request of requests) {\r\n const result = await this.signRequest(authToken, walletId, request);\r\n results.push(result);\r\n }\r\n \r\n return results;\r\n }\r\n}","/**\r\n * PERS Signer SDK Constants\r\n * \r\n * These are stable configuration values for the PERS blockchain signing infrastructure.\r\n * These values should remain consistent across deployments and environments.\r\n * \r\n * Values are taken from the .env configuration to maintain consistency.\r\n */\r\n\r\nexport const SIGNER_CONFIG = {\r\n /**\r\n * Default API URL for the PERS signer backend service\r\n * This is the production endpoint that handles WebAuthn operations and transaction signing\r\n */\r\n DEFAULT_SIGNER_API_URL: 'https://signer-api.pers.ninja/v1',\r\n\r\n /**\r\n * PERS Platform API URLs\r\n */\r\n DEFAULT_PERS_API_URL: 'https://api.pers.ninja/v2',\r\n STAGING_PERS_API_URL: 'https://dev.api.pers.ninja/v2',\r\n\r\n /**\r\n * Default relying party name for WebAuthn operations\r\n * This appears in the browser's authentication prompts\r\n */\r\n DEFAULT_RELYING_PARTY_NAME: 'PERS Signer',\r\n DEFAULT_RELYING_PARTY_ID: 'signer.pers.ninja',\r\n /**\r\n * API endpoints for different operations\r\n */\r\n ENDPOINTS: {\r\n AUTH: '/auth',\r\n WALLETS: '/wallets',\r\n TRANSACTIONS: '/transactions',\r\n HEALTH: '/health',\r\n },\r\n} as const;\r\n\r\n/**\r\n * WebAuthn configuration constants\r\n */\r\nexport const WEBAUTHN_CONFIG = {\r\n /**\r\n * Timeout for WebAuthn operations (in milliseconds)\r\n */\r\n TIMEOUT: 60000,\r\n\r\n /**\r\n * User verification requirement\r\n * 'preferred' - ask for verification if available\r\n * 'required' - require verification\r\n * 'discouraged' - don't ask for verification\r\n */\r\n USER_VERIFICATION: 'preferred' as const,\r\n\r\n /**\r\n * Authenticator attachment preference\r\n */\r\n AUTHENTICATOR_ATTACHMENT: 'platform' as const,\r\n} as const;","import { SessionAuthContextResponseDTO } from '@explorins/pers-shared/browser';\r\nimport { TenantPublicDTO, TransactionFormat, TRANSACTION_FORMATS, TransactionRequestResponseDTO, TransactionSubmissionRequestDTO } from '../types/pers-types';\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\n\r\n/**\r\n * Service for interacting with PERS (Phygital Experience Rewards System) backend API\r\n */\r\n\r\n\r\n/**\r\n * Configuration interface for PERS API\r\n */\r\nexport interface PersApiConfig {\r\n baseUrl: string;\r\n projectKey?: string; // Now optional, will be retrieved from tenant\r\n}\r\n\r\n/**\r\n * Error response from the PERS API\r\n */\r\nexport interface PersApiError {\r\n status: number;\r\n message: string;\r\n error?: any;\r\n}\r\n\r\n/**\r\n * Get PERS API base URL with staging option\r\n * @param useStaging Whether to use staging environment URL\r\n */\r\nconst getPersApiUrl = (useStaging: boolean = false): string => {\r\n if (useStaging) {\r\n return SIGNER_CONFIG.STAGING_PERS_API_URL;\r\n }\r\n \r\n return SIGNER_CONFIG.DEFAULT_PERS_API_URL;\r\n};\r\n\r\n/**\r\n * Default PERS API configuration\r\n * Can be overridden by applications using the shared library\r\n */\r\nexport const DEFAULT_PERS_CONFIG: PersApiConfig = {\r\n baseUrl: getPersApiUrl(),\r\n // projectKey removed - will be retrieved from tenant\r\n};\r\n\r\ninterface CachedTenantData {\r\n tenant: TenantPublicDTO;\r\n cachedAt: number;\r\n expiresAt: number;\r\n}\r\n\r\nexport class PersService {\r\n private static config: PersApiConfig = DEFAULT_PERS_CONFIG;\r\n private static tenantCache: Map<string, CachedTenantData> = new Map();\r\n private static currentProjectKey: string | null = null;\r\n private static currentTenantId: string | null = null;\r\n private static useStaging: boolean = false;\r\n private static readonly TENANT_CACHE_TTL = 24 * 60 * 60 * 1000; // 24 hours - tenant configs are essentially static\r\n\r\n /**\r\n * Configure the PERS API settings\r\n * @param config - The configuration object\r\n */\r\n static configure(config: Partial<PersApiConfig>) {\r\n this.config = { ...this.config, ...config };\r\n }\r\n\r\n /**\r\n * Enable staging mode when project key is not available\r\n * @param enableStaging Whether to use staging environment\r\n */\r\n static setStagingMode(enableStaging: boolean) {\r\n this.useStaging = enableStaging;\r\n this.config.baseUrl = getPersApiUrl(enableStaging);\r\n }\r\n\r\n /**\r\n * Get current configuration\r\n */\r\n static getConfig(): PersApiConfig {\r\n return { \r\n ...this.config, \r\n baseUrl: getPersApiUrl(this.useStaging) \r\n };\r\n }\r\n\r\n /**\r\n * Get tenant information by tenant ID\r\n * @param tenantId - The tenant ID to retrieve\r\n * @param authToken - Optional auth token for authentication\r\n * @returns Promise with tenant public information\r\n */\r\n static async getTenantById(tenantId: string, authToken?: string): Promise<TenantPublicDTO> {\r\n // Check memory cache first with expiration\r\n const cached = this.tenantCache.get(tenantId);\r\n if (cached && Date.now() < cached.expiresAt) {\r\n return cached.tenant;\r\n }\r\n\r\n try {\r\n const headers: Record<string, string> = {\r\n 'accept': 'application/json',\r\n 'Content-Type': 'application/json'\r\n };\r\n\r\n // Add auth token if provided\r\n if (authToken) {\r\n headers['Authorization'] = `Bearer ${authToken}`;\r\n }\r\n\r\n // Try production URL first\r\n let response = await fetch(`${getPersApiUrl(false)}/tenants/${tenantId}`, {\r\n method: 'GET',\r\n headers\r\n });\r\n\r\n // If production fails, try dev/staging URL\r\n if (!response.ok) {\r\n response = await fetch(`${getPersApiUrl(true)}/tenants/${tenantId}`, {\r\n method: 'GET',\r\n headers\r\n });\r\n \r\n if (response.ok) {\r\n // Dev succeeded - use staging mode temporarily\r\n this.setStagingMode(true);\r\n } else {\r\n // Both failed - revert to production and throw error\r\n this.setStagingMode(false);\r\n \r\n const errorData = await response.json().catch(() => ({}));\r\n throw {\r\n status: response.status,\r\n message: errorData.message || `Failed to fetch tenant ${tenantId} from both production and dev environments`,\r\n error: errorData\r\n } as PersApiError;\r\n }\r\n }\r\n\r\n const tenantData = await response.json() as TenantPublicDTO;\r\n\r\n // Cache the tenant data with expiration\r\n const now = Date.now();\r\n this.tenantCache.set(tenantId, {\r\n tenant: tenantData,\r\n cachedAt: now,\r\n expiresAt: now + this.TENANT_CACHE_TTL\r\n });\r\n \r\n // Update current project key (check multiple possible property names)\r\n this.currentProjectKey = (tenantData as any).projectKey || (tenantData as any).projectApiKey || (tenantData as any).apiKey;\r\n this.currentTenantId = tenantId;\r\n \r\n return tenantData;\r\n } catch (error: any) {\r\n console.error('Error fetching tenant:', error);\r\n throw error;\r\n }\r\n }\r\n\r\n /**\r\n * Initialize tenant configuration from JWT\r\n * @param tenantId - The tenant ID from JWT payload\r\n * @param authToken - Optional auth token for authentication\r\n * @returns Promise with tenant information\r\n */\r\n static async initializeTenant(tenantId: string, authToken?: string): Promise<TenantPublicDTO> {\r\n const tenantData = await this.getTenantById(tenantId, authToken);\r\n \r\n // Update service configuration with tenant's project key\r\n const projectKey = tenantData.projectApiKey;\r\n if (projectKey) {\r\n this.currentProjectKey = projectKey;\r\n this.currentTenantId = tenantId;\r\n }\r\n \r\n return tenantData;\r\n }\r\n\r\n /**\r\n * Ensure tenant is initialized and current, with automatic revalidation\r\n * @param tenantId - The tenant ID to ensure is initialized\r\n * @param authToken - Optional auth token for authentication\r\n * @returns Promise with tenant information\r\n */\r\n static async ensureTenantInitialized(tenantId: string, authToken?: string): Promise<TenantPublicDTO> {\r\n // Check if we already have the right tenant initialized and it's still valid\r\n const cached = this.tenantCache.get(tenantId);\r\n if (this.currentTenantId === tenantId && cached && Date.now() < cached.expiresAt) {\r\n return cached.tenant;\r\n }\r\n\r\n // Initialize or refresh tenant data\r\n return await this.initializeTenant(tenantId, authToken);\r\n }\r\n\r\n /**\r\n * Get the current project key (either from tenant or fallback)\r\n * @param tenantId - Optional tenant ID to ensure is initialized\r\n * @returns The project key to use for API calls\r\n */\r\n private static async getProjectKey(tenantId: string): Promise<string> {\r\n // If tenantId provided and different from current, initialize it\r\n if (tenantId && this.currentTenantId !== tenantId) {\r\n await this.ensureTenantInitialized(tenantId);\r\n }\r\n \r\n if (this.currentProjectKey) {\r\n return this.currentProjectKey;\r\n }\r\n \r\n if (this.config.projectKey) {\r\n return this.config.projectKey;\r\n }\r\n \r\n console.error('No project key available. Current tenant cache:', Array.from(this.tenantCache.keys()));\r\n throw new Error('No project key available. Please initialize tenant or configure project key.');\r\n }\r\n\r\n /**\r\n * Clear tenant cache and reset project key\r\n */\r\n static clearTenantCache(): void {\r\n this.tenantCache.clear();\r\n this.currentProjectKey = null;\r\n this.currentTenantId = null;\r\n }\r\n\r\n /**\r\n * Authenticates a user with the PERS backend using their auth token\r\n * \r\n * @param authToken - The authentication token received from DFNS after login/registration\r\n * @param tenantId - Optional tenant ID for automatic initialization\r\n * @returns A promise that resolves to the authentication response\r\n * @throws If the request fails\r\n */\r\n static async authenticateUser(authToken: string, tenantId: string): Promise<SessionAuthContextResponseDTO> {\r\n try {\r\n const projectKey = await this.getProjectKey(tenantId);\r\n \r\n const headers: Record<string, string> = {\r\n 'accept': 'application/json',\r\n 'x-project-key': projectKey,\r\n 'Content-Type': 'application/json'\r\n };\r\n\r\n // Try production first (unless already in staging mode)\r\n let response = await fetch(`${getPersApiUrl(this.useStaging)}/auth/token`, {\r\n method: 'POST',\r\n headers,\r\n body: JSON.stringify({ authToken })\r\n }); \r\n\r\n // If production fails and we're not already in staging, try dev\r\n if (!response.ok && !this.useStaging) {\r\n console.info('[PERS] Production API unavailable, attempting staging fallback');\r\n response = await fetch(`${getPersApiUrl(true)}/auth/token`, {\r\n method: 'POST',\r\n headers,\r\n body: JSON.stringify({ authToken })\r\n });\r\n \r\n if (response.ok) {\r\n // Dev succeeded - switch to staging mode\r\n console.info('[PERS] Staging API connection successful, switching to staging mode');\r\n this.setStagingMode(true);\r\n } else {\r\n // Both failed - revert to production and throw error\r\n this.setStagingMode(false);\r\n }\r\n }\r\n\r\n const data = await response.json();\r\n if (!response.ok) {\r\n throw {\r\n status: response.status,\r\n message: data.message || 'Authentication with PERS backend failed in both environments',\r\n error: data\r\n } as PersApiError;\r\n }\r\n \r\n console.info('[PERS] User authentication successful');\r\n return data as SessionAuthContextResponseDTO;\r\n } catch (error: any) {\r\n // Rethrow a structured error\r\n throw {\r\n status: error.status || 500,\r\n message: error.message || 'Failed to authenticate with PERS backend',\r\n error\r\n } as PersApiError;\r\n }\r\n }\r\n\r\n /**\r\n * Submits a transaction by calling the backend endpoint\r\n *\r\n * @param transactionId - The ID of the transaction to submit\r\n * @param signedTransactionOrSignature - The signed transaction data or EIP-712 signature\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @param submissionType - The transaction format type\r\n * @param tenantId - Optional tenant ID for automatic initialization\r\n * @returns A promise that resolves to the transaction submission response\r\n * @throws If the request fails\r\n */\r\n static async submitTransaction(\r\n transactionId: string, \r\n signedTransactionOrSignature: string, \r\n persAccessToken: string,\r\n submissionType: TransactionFormat,\r\n tenantId: string\r\n ): Promise<TransactionRequestResponseDTO> {\r\n try {\r\n // Map TransactionFormat to the backend's expected submission type\r\n const dto: TransactionSubmissionRequestDTO = {\r\n transactionId,\r\n type: submissionType,\r\n ...(submissionType === TRANSACTION_FORMATS.EIP_712\r\n ? { signature: signedTransactionOrSignature }\r\n : { signedTransaction: signedTransactionOrSignature }\r\n )\r\n };\r\n\r\n // ✅ UPDATED: /transaction/auth/submit/${transactionId} → /transactions/${transactionId}/submit\r\n const res = await fetch(`${getPersApiUrl(this.useStaging)}/transactions/submit`, {\r\n method: \"POST\",\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n 'x-project-key': await this.getProjectKey(tenantId),\r\n Authorization: `Bearer ${persAccessToken}`,\r\n },\r\n body: JSON.stringify(dto),\r\n });\r\n \r\n const response = await res.json();\r\n \r\n if (!res.ok) {\r\n // Throw structured error with the backend response\r\n throw {\r\n status: res.status,\r\n message: response.message || \"Failed to submit transaction\",\r\n error: response\r\n } as PersApiError;\r\n }\r\n \r\n return response as TransactionRequestResponseDTO;\r\n } catch (error: any) {\r\n // Rethrow a structured error\r\n throw {\r\n status: error.status || 500,\r\n message: error.message || 'Failed to submit transaction to PERS backend',\r\n error\r\n } as PersApiError;\r\n }\r\n }\r\n\r\n /**\r\n * Fetches a prepared transaction for signing by transactionId\r\n * @param transactionId - The transaction ID to fetch\r\n * @param persAccessToken - The PERS access token for authentication (Bearer)\r\n * @param tenantId - Optional tenant ID for automatic initialization\r\n * @returns The prepared transaction data\r\n * @throws If the request fails\r\n */\r\n static async fetchPreparedTransaction(transactionId: string, persAccessToken: string, tenantId: string): Promise<TransactionRequestResponseDTO> {\r\n try {\r\n // ✅ UPDATED: /transaction/auth/prepare-signing/${transactionId} → /transactions/${transactionId}/prepare\r\n const res = await fetch(\r\n `${getPersApiUrl(this.useStaging)}/transactions/${transactionId}/prepare`,\r\n {\r\n headers: {\r\n \"Content-Type\": \"application/json\",\r\n \"x-project-key\": await this.getProjectKey(tenantId),\r\n Authorization: `Bearer ${persAccessToken}`,\r\n },\r\n }\r\n );\r\n \r\n const response = await res.json();\r\n \r\n if (!res.ok) {\r\n // Throw structured error with the backend response\r\n throw {\r\n status: res.status,\r\n message: response.message || \"Failed to fetch prepared transaction\",\r\n error: response\r\n } as PersApiError;\r\n }\r\n \r\n return response as TransactionRequestResponseDTO;\r\n } catch (error: any) {\r\n // Rethrow a structured error\r\n throw {\r\n status: error.status || 500,\r\n message: error.message || 'Failed to fetch prepared transaction from PERS backend',\r\n error\r\n } as PersApiError;\r\n }\r\n }\r\n\r\n /**\r\n * Helper method to determine if transaction data is available for signing\r\n * @param transactionResponse - Response from prepare or fetch transaction\r\n * @returns boolean indicating if transaction can be signed\r\n */\r\n static isTransactionReadyForSigning(transactionResponse: TransactionRequestResponseDTO): boolean {\r\n return transactionResponse.signingData !== null && transactionResponse.signingData !== undefined;\r\n }\r\n \r\n /**\r\n * Helper method to get transaction data from response\r\n * @param transactionResponse - Response from prepare or fetch transaction\r\n * @returns The transaction data ready for signing\r\n * @throws If transaction data is not available\r\n */\r\n static getTransactionDataForSigning(transactionResponse: TransactionRequestResponseDTO) {\r\n if (!transactionResponse.signingData) {\r\n throw new Error('Transaction data is not ready for signing');\r\n }\r\n return transactionResponse.signingData!;\r\n }\r\n}\r\n","import { getHttpClient } from '../platform/HttpClient';\r\nimport { getServiceConfig } from '../platform/ConfigProvider';\r\nimport { HealthCheckResponse } from '../types/signer-api-types';\r\n\r\n/**\r\n * Health check service for signer API\r\n * Handles health check operations for the new v1 API\r\n */\r\nexport class HealthService {\r\n \r\n /**\r\n * Perform health check on the signer API\r\n * @returns Promise resolving to health check result\r\n */\r\n static async checkHealth(): Promise<HealthCheckResponse> {\r\n const httpClient = getHttpClient();\r\n const config = getServiceConfig();\r\n \r\n try {\r\n const response = await httpClient.get<HealthCheckResponse>(\r\n `${config.apiUrl}/health`\r\n );\r\n \r\n return response.data;\r\n } catch (error) {\r\n console.error('[HealthService] Health check failed:', error);\r\n // Return failed health check instead of throwing\r\n return {\r\n success: false\r\n };\r\n }\r\n }\r\n}","// Legacy signature response interface for backward compatibility\r\ninterface GenerateSignatureResponse {\r\n status: 'Signed' | 'Failed' | 'Pending';\r\n signature?: {\r\n r: string;\r\n s: string;\r\n recid: number;\r\n };\r\n error?: string;\r\n}\r\n\r\n// New signature response from updated signing service (actual backend format)\r\ninterface NewSignatureResponse {\r\n // Signature format depends on signing method:\r\n // - EIP-712: structured {r, s, recid, encoded}\r\n // - Hash signing: potentially string format\r\n signature?: {\r\n r: string;\r\n s: string;\r\n recid: number;\r\n encoded: string;\r\n } | string;\r\n transaction?: any;\r\n requestBody?: {\r\n kind?: 'Eip712' | 'Hash' | string;\r\n blockchainKind?: string;\r\n [key: string]: unknown;\r\n };\r\n [key: string]: unknown;\r\n}\r\n\r\n// Adapter function to convert backend signature response to legacy format\r\nconst adaptSignatureResponse = (newResponse: NewSignatureResponse): GenerateSignatureResponse => {\r\n if (!newResponse.signature) {\r\n console.error('[KeyWallet] No signature in response:', newResponse);\r\n throw new Error('Signature missing from response');\r\n }\r\n \r\n // Handle structured signature format (typically from EIP-712 signing)\r\n if (typeof newResponse.signature === 'object' && 'r' in newResponse.signature) {\r\n const { r, s, recid } = newResponse.signature;\r\n \r\n return {\r\n status: 'Signed' as const,\r\n signature: {\r\n r,\r\n s,\r\n recid // Use recid directly from backend\r\n }\r\n };\r\n }\r\n \r\n // Handle string signature format (potentially from hash signing)\r\n if (typeof newResponse.signature === 'string') {\r\n // Parse string signature into components\r\n // Assuming it's a hex string that can be split into r, s, v components\r\n const signature = newResponse.signature;\r\n if (signature.length === 132) { // 0x + 32 bytes r + 32 bytes s + 1 byte v\r\n const r = '0x' + signature.slice(2, 66);\r\n const s = '0x' + signature.slice(66, 130);\r\n const v = parseInt(signature.slice(130, 132), 16);\r\n const recid = v >= 27 ? v - 27 : v; // Convert v to recid\r\n \r\n return {\r\n status: 'Signed' as const,\r\n signature: {\r\n r,\r\n s,\r\n recid\r\n }\r\n };\r\n }\r\n \r\n console.error('[KeyWallet] Invalid string signature length:', signature.length);\r\n throw new Error(`Invalid string signature format - expected 132 characters, got ${signature.length}`);\r\n }\r\n \r\n console.error('[KeyWallet] Invalid signature format - expected structured object or string:', typeof newResponse.signature);\r\n throw new Error('Invalid signature format in response - expected structured object or string from backend');\r\n};\r\n\r\nexport interface GetWalletResponse {\r\n id: string;\r\n signingKey: {\r\n publicKey: string;\r\n };\r\n // Add other wallet properties as needed\r\n}\r\n\r\nclass DfnsError extends Error {\r\n constructor(public code: number, message: string, public details?: any) {\r\n super(message);\r\n this.name = 'DfnsError';\r\n }\r\n}\r\n\r\nimport {\r\n AbstractSigner,\r\n Provider,\r\n Signature,\r\n Transaction,\r\n TransactionLike,\r\n TransactionRequest,\r\n TypedDataDomain,\r\n TypedDataField,\r\n computeAddress,\r\n getAddress,\r\n keccak256,\r\n resolveAddress,\r\n resolveProperties,\r\n toUtf8Bytes,\r\n} from \"ethers\";\r\nimport { SigningService } from \"./SigningService\";\r\nimport { \r\n AnyTransactionData, \r\n TRANSACTION_FORMATS,\r\n LegacyTransaction, \r\n EIP2930Transaction, \r\n EIP1559Transaction, \r\n EIP712TransactionData\r\n} from \"../types\";\r\n\r\ntype WalletOptions = {\r\n wallet: WalletMetadata;\r\n authToken: string;\r\n signingService: SigningService;\r\n};\r\n\r\ntype WalletMetadata = GetWalletResponse & { \r\n boundToEvmNetwork: boolean;\r\n // Add any additional wallet metadata properties\r\n};\r\n\r\nconst assertSigned = (res: GenerateSignatureResponse) => {\r\n if (res.status === \"Failed\") {\r\n throw new DfnsError(-1, \"signing failed\", res);\r\n } else if (res.status !== \"Signed\") {\r\n throw new DfnsError(\r\n -1,\r\n \"cannot complete signing synchronously because this wallet action requires policy approval\",\r\n res\r\n );\r\n }\r\n};\r\n\r\nconst combineSignature = (res: GenerateSignatureResponse): string => {\r\n if (!res.signature) {\r\n console.error('[KeyWallet] No signature in response for combining:', res);\r\n throw new DfnsError(-1, \"signature missing\", res);\r\n }\r\n\r\n const { r, s, recid } = res.signature;\r\n \r\n const ethersSignature = Signature.from({\r\n r,\r\n s,\r\n v: recid ? 0x1c : 0x1b, // Assuming 0x1c for chain_id > 0, 0x1b otherwise. DFNS usually provides recid.\r\n });\r\n \r\n return ethersSignature.serialized;\r\n};\r\n\r\nexport class KeyWallet extends AbstractSigner {\r\n private address?: string;\r\n private authToken: string;\r\n private metadata: WalletMetadata;\r\n private signingService: SigningService;\r\n\r\n constructor(private options: WalletOptions, provider?: Provider | null) {\r\n super(provider);\r\n this.metadata = options.wallet;\r\n this.authToken = options.authToken;\r\n this.signingService = options.signingService;\r\n }\r\n\r\n public connect(provider: Provider | null): KeyWallet {\r\n const copy = new KeyWallet(this.options, provider);\r\n copy.address = this.address;\r\n copy.metadata = this.metadata;\r\n copy.authToken = this.authToken;\r\n return copy;\r\n }\r\n\r\n public async getAddress(): Promise<string> {\r\n if (this.address) {\r\n return this.address; // Return cached address if available\r\n }\r\n // Compute and cache the address if not already available\r\n this.address = computeAddress(`0x${this.metadata.signingKey.publicKey}`);\r\n return this.address;\r\n }\r\n\r\n private async signHash(hash: string): Promise<string> {\r\n const rawRes = await this.signingService.signHash(\r\n this.authToken,\r\n this.metadata.id,\r\n hash\r\n );\r\n \r\n const res = adaptSignatureResponse(rawRes);\r\n assertSigned(res);\r\n const combinedSignature = combineSignature(res);\r\n \r\n return combinedSignature;\r\n }\r\n\r\n public async signTransaction(tx: TransactionRequest): Promise<string> {\r\n // Resolve any addresses\r\n const { to, from } = await resolveProperties({\r\n to: tx.to ? resolveAddress(tx.to, this.provider) : undefined,\r\n from: tx.from ? resolveAddress(tx.from, this.provider) : undefined,\r\n });\r\n\r\n if (to != null) {\r\n tx.to = to;\r\n }\r\n if (from != null) {\r\n tx.from = from;\r\n }\r\n\r\n if (tx.from != null) {\r\n if (getAddress(<string>tx.from) !== (await this.getAddress())) {\r\n throw new Error(\"transaction from address mismatch\");\r\n }\r\n delete tx.from;\r\n }\r\n\r\n const btx = Transaction.from(<TransactionLike<string>>tx);\r\n const signature = await this.signHash(btx.unsignedHash);\r\n\r\n // Populate the signature\r\n const signedTx = Transaction.from(btx);\r\n signedTx.signature = signature;\r\n\r\n return signedTx.serialized;\r\n }\r\n\r\n public async signMessage(message: string | Uint8Array): Promise<string> {\r\n if (typeof message === \"string\") {\r\n message = toUtf8Bytes(message);\r\n }\r\n\r\n const hash = keccak256(message);\r\n return this.signHash(hash);\r\n }\r\n\r\n public async signTypedData(\r\n domain: TypedDataDomain,\r\n types: Record<string, TypedDataField[]>,\r\n value: Record<string, any>\r\n ): Promise<string> {\r\n try {\r\n // Use DFNS native EIP-712 support with correct structure\r\n const rawRes = await this.signingService.signTypedData(\r\n this.authToken,\r\n this.metadata.id,\r\n domain,\r\n types,\r\n value\r\n );\r\n \r\n const res = adaptSignatureResponse(rawRes);\r\n assertSigned(res);\r\n const combinedSignature = combineSignature(res);\r\n \r\n return combinedSignature;\r\n } catch (error) {\r\n console.error('[KeyWallet] EIP-712 signing failed:', error);\r\n throw new Error(`EIP-712 signing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);\r\n }\r\n }\r\n\r\n /**\r\n * Signs a PERS transaction based on its format\r\n * Handles different transaction types: Legacy, EIP-2930, EIP-1559, and EIP-712\r\n * @param transactionData - The transaction data from PERS API\r\n * @returns The signature string\r\n */\r\n public async signPersTransaction(transactionData: AnyTransactionData): Promise<string> {\r\n switch (transactionData.format) {\r\n case TRANSACTION_FORMATS.LEGACY: {\r\n const legacyTx = transactionData as LegacyTransaction;\r\n const ethersTransaction: TransactionRequest = {\r\n to: legacyTx.to,\r\n value: legacyTx.value,\r\n data: legacyTx.data,\r\n gasLimit: legacyTx.gas,\r\n gasPrice: legacyTx.gasPrice,\r\n nonce: legacyTx.nonce,\r\n chainId: legacyTx.chainId,\r\n type: 0\r\n };\r\n return await this.signTransaction(ethersTransaction);\r\n }\r\n\r\n case TRANSACTION_FORMATS.EIP_2930: {\r\n const eip2930Tx = transactionData as EIP2930Transaction;\r\n const ethersTransaction: TransactionRequest = {\r\n to: eip2930Tx.to,\r\n value: eip2930Tx.value,\r\n data: eip2930Tx.data,\r\n gasLimit: eip2930Tx.gas,\r\n gasPrice: eip2930Tx.gasPrice,\r\n nonce: eip2930Tx.nonce,\r\n chainId: eip2930Tx.chainId,\r\n accessList: eip2930Tx.accessList,\r\n type: 1\r\n };\r\n return await this.signTransaction(ethersTransaction);\r\n }\r\n\r\n case TRANSACTION_FORMATS.EIP_1559: {\r\n const eip1559Tx = transactionData as EIP1559Transaction;\r\n const ethersTransaction: TransactionRequest = {\r\n to: eip1559Tx.to,\r\n value: eip1559Tx.value,\r\n data: eip1559Tx.data,\r\n gasLimit: eip1559Tx.gas,\r\n maxFeePerGas: eip1559Tx.maxFeePerGas,\r\n maxPriorityFeePerGas: eip1559Tx.maxPriorityFeePerGas,\r\n nonce: eip1559Tx.nonce,\r\n chainId: eip1559Tx.chainId,\r\n type: 2\r\n };\r\n return await this.signTransaction(ethersTransaction);\r\n }\r\n\r\n case TRANSACTION_FORMATS.EIP_712: {\r\n const eip712Data = transactionData as EIP712TransactionData;\r\n const typedData = eip712Data.typedData;\r\n\r\n // Sign the EIP-712 structured data with only Transaction and its dependencies\r\n // DFNS expects only the types that are actually used by the primary type\r\n const transactionTypes = {\r\n Transaction: typedData.types.Transaction\r\n };\r\n \r\n // Sign the EIP-712 structured data\r\n return await this.signTypedData(\r\n typedData.domain,\r\n transactionTypes,\r\n typedData.message\r\n );\r\n }\r\n\r\n default:\r\n throw new Error(`Unsupported transaction format: ${(transactionData as any).format}`);\r\n }\r\n }\r\n}\r\n","/**\r\n * Error codes for transaction signing operations\r\n */\r\nexport enum TransactionSigningErrorCode {\r\n INVALID_TOKENS = 'INVALID_TOKENS',\r\n TRANSACTION_NOT_FOUND = 'TRANSACTION_NOT_FOUND',\r\n TRANSACTION_NOT_PENDING = 'TRANSACTION_NOT_PENDING',\r\n WALLET_NOT_AVAILABLE = 'WALLET_NOT_AVAILABLE',\r\n WEBAUTHN_OPERATION_IN_PROGRESS = 'WEBAUTHN_OPERATION_IN_PROGRESS',\r\n SIGNING_CANCELLED = 'SIGNING_CANCELLED',\r\n PERS_AUTH_FAILED = 'PERS_AUTH_FAILED',\r\n AUTH_FAILED = 'AUTH_FAILED',\r\n TRANSACTION_NOT_READY = 'TRANSACTION_NOT_READY',\r\n SUBMISSION_FAILED = 'SUBMISSION_FAILED',\r\n SERVER_ERROR = 'SERVER_ERROR',\r\n UNKNOWN_ERROR = 'UNKNOWN_ERROR'\r\n}\r\n\r\n/**\r\n * Structured error for transaction signing operations\r\n */\r\nexport interface TransactionSigningError extends Error {\r\n code: TransactionSigningErrorCode;\r\n transactionId?: string;\r\n originalError?: unknown;\r\n}","import { TransactionStatus } from '@explorins/pers-shared/browser';\r\nimport { \r\n CombinedTransactionStatus, \r\n TransactionStatusInfo \r\n} from '../types/transaction-types';\r\nimport { \r\n TransactionSigningErrorCode, \r\n TransactionSigningError \r\n} from '../types/error-types';\r\n\r\n/**\r\n * Handles all error-related operations for transaction signing\r\n */\r\nexport class TransactionErrorHandler {\r\n \r\n /**\r\n * Get user-friendly status messages for transaction statuses\r\n * @param status - The transaction status\r\n * @returns Human-readable message explaining the status\r\n */\r\n static getStatusMessage(status: CombinedTransactionStatus): string {\r\n // Validate input parameter\r\n if (!status || typeof status !== 'string') {\r\n return 'Transaction status is unknown and cannot be processed.';\r\n }\r\n\r\n const normalizedStatus = status.toLowerCase();\r\n \r\n switch (normalizedStatus) {\r\n // PERS TransactionStatus enum values\r\n case TransactionStatus.SUCCEEDED.toLowerCase():\r\n return 'This transaction has already been completed successfully.';\r\n case TransactionStatus.PROCESSING.toLowerCase():\r\n case TransactionStatus.BROADCASTED.toLowerCase():\r\n return 'This transaction is currently being processed on the blockchain.';\r\n case TransactionStatus.FAILED.toLowerCase():\r\n return 'This transaction has failed and cannot be processed.';\r\n case TransactionStatus.PENDING_SIGNATURE.toLowerCase():\r\n case TransactionStatus.CREATED.toLowerCase():\r\n return 'This transaction is ready to be signed.';\r\n \r\n // Additional status values\r\n case TransactionStatus.CANCELLED.toLowerCase():\r\n return 'This transaction has been cancelled and cannot be signed.';\r\n case TransactionStatus.EXPIRED.toLowerCase():\r\n return 'This transaction has expired and can no longer be signed.';\r\n \r\n default:\r\n return `This transaction is in \"${status}\" state and cannot be signed at this time.`;\r\n }\r\n }\r\n\r\n /**\r\n * Safely convert string status to TransactionStatus enum\r\n * @param statusString - The status string to convert\r\n * @returns A valid TransactionStatus enum value\r\n */\r\n static parseTransactionStatus(statusString: string): CombinedTransactionStatus {\r\n // Normalize the input string to uppercase to match enum values\r\n const normalizedStatus = statusString.trim().toUpperCase();\r\n \r\n // Check if the normalized status exists in the TransactionStatus enum\r\n const enumValues = Object.values(TransactionStatus) as string[];\r\n const matchingStatus = enumValues.find(value => value.toUpperCase() === normalizedStatus);\r\n \r\n // Return the matching status or a fallback\r\n return (matchingStatus as CombinedTransactionStatus) || TransactionStatus.FAILED;\r\n }\r\n\r\n /**\r\n * Create a structured transaction signing error\r\n * @param code - Error code\r\n * @param message - Error message\r\n * @param transactionId - Optional transaction ID\r\n * @param originalError - Original error that caused this\r\n * @returns Structured error object\r\n */\r\n static createError(\r\n code: TransactionSigningErrorCode,\r\n message: string,\r\n transactionId?: string,\r\n originalError?: unknown\r\n ): TransactionSigningError {\r\n const error = new Error(message) as TransactionSigningError;\r\n error.code = code;\r\n error.transactionId = transactionId;\r\n error.originalError = originalError;\r\n return error;\r\n }\r\n\r\n /**\r\n * Create transaction status info object for UI display\r\n * @param transactionId - The transaction ID\r\n * @param status - The transaction status\r\n * @param customMessage - Optional custom message, otherwise uses default status message\r\n * @returns TransactionStatusInfo object\r\n */\r\n static createStatusInfo(\r\n transactionId: string,\r\n status: CombinedTransactionStatus,\r\n customMessage?: string\r\n ): TransactionStatusInfo {\r\n return {\r\n transactionId,\r\n transactionStatus: status,\r\n message: customMessage || this.getStatusMessage(status)\r\n };\r\n }\r\n\r\n /**\r\n * Handle TRANSACTION_NOT_PENDING error from PERS API\r\n * Consolidates the duplicate error handling logic\r\n * @param error - The error object from PERS API\r\n * @param transactionId - The transaction ID\r\n * @returns Never (always throws)\r\n * @throws Object with shouldShowStatus and statusInfo\r\n */\r\n static handleTransactionNotPendingError(\r\n error: { \r\n status?: number; \r\n error?: { code?: string; message?: string; developerMessage?: string }; \r\n code?: string; \r\n message?: string; \r\n developerMessage?: string \r\n },\r\n transactionId: string\r\n ): never {\r\n // Extract error data - could be in error.error or directly in error\r\n const errorData = error.error || error;\r\n const developerMessage = errorData.developerMessage || '';\r\n \r\n // Extract actual transaction status from the developer message\r\n const statusMatch = developerMessage.match(/has status:\\s*(\\w+)/i);\r\n const actualStatusString = statusMatch ? statusMatch[1] : 'FAILED';\r\n const actualStatus = this.parseTransactionStatus(actualStatusString);\r\n \r\n // Create status info for UI\r\n const statusInfo = this.createStatusInfo(\r\n transactionId,\r\n actualStatus,\r\n errorData.message || this.getStatusMessage(actualStatus)\r\n );\r\n \r\n // Return status info instead of storing in localStorage\r\n // Throw special error that UI can handle\r\n throw { shouldShowStatus: true, statusInfo };\r\n }\r\n\r\n /**\r\n * Process PERS API errors and handle TRANSACTION_NOT_PENDING cases\r\n * @param err - The caught error from PERS API\r\n * @param transactionId - The transaction ID\r\n * @throws Either the original error or a structured status error\r\n */\r\n static processPersApiError(err: unknown, transactionId: string): never {\r\n // Handle structured PERS error response\r\n const error = err as { \r\n status?: number; \r\n error?: { code?: string; message?: string; developerMessage?: string }; \r\n code?: string; \r\n message?: string; \r\n developerMessage?: string \r\n };\r\n \r\n // Check for TRANSACTION_NOT_PENDING error in different possible structures\r\n const isNotPendingError = \r\n (error.status && error.error && error.error.code === 'TRANSACTION_NOT_PENDING') ||\r\n (error.code === 'TRANSACTION_NOT_PENDING') ||\r\n (error.error && error.error.code === 'TRANSACTION_NOT_PENDING');\r\n \r\n if (isNotPendingError) {\r\n this.handleTransactionNotPendingError(error, transactionId);\r\n }\r\n \r\n // Handle specific HTTP status codes with user-friendly messages\r\n if (error.status) {\r\n switch (error.status) {\r\n case 404:\r\n throw this.createError(\r\n TransactionSigningErrorCode.TRANSACTION_NOT_FOUND,\r\n `Transaction ${transactionId} not found. It may have expired or been processed already.`,\r\n transactionId,\r\n err\r\n );\r\n case 500:\r\n throw this.createError(\r\n TransactionSigningErrorCode.SERVER_ERROR,\r\n `Server error while processing transaction ${transactionId}. The transaction may no longer be available or may have already been signed.`,\r\n transactionId,\r\n err\r\n );\r\n case 401:\r\n case 403:\r\n throw this.createError(\r\n TransactionSigningErrorCode.AUTH_FAILED,\r\n 'Authentication failed. Please refresh the page and try again.',\r\n transactionId,\r\n err\r\n );\r\n }\r\n }\r\n \r\n // Re-throw other errors as-is\r\n throw err;\r\n }\r\n}","import { TransactionSigningErrorCode } from '../types/error-types';\r\nimport { \r\n SigningAuthTokens, \r\n TransactionSigningParams \r\n} from '../types/transaction-types';\r\nimport { TransactionErrorHandler } from './TransactionErrorHandler';\r\n\r\n/**\r\n * Handles all validation operations for transaction signing\r\n */\r\nexport class TransactionValidator {\r\n \r\n /**\r\n * Validate transaction signing parameters\r\n * @param params - Transaction signing parameters to validate\r\n * @throws TransactionSigningError if validation fails\r\n */\r\n static validateSigningParams(params: TransactionSigningParams): void {\r\n if (!params) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Transaction signing parameters are required'\r\n );\r\n }\r\n\r\n if (!params.transactionId || typeof params.transactionId !== 'string') {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Valid transaction ID is required'\r\n );\r\n }\r\n\r\n if (!params.authTokens) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Authentication tokens are required',\r\n params.transactionId\r\n );\r\n }\r\n\r\n if (!params.authTokens.signerAuthToken || !params.authTokens.persAccessToken) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Both signer and PERS authentication tokens are required',\r\n params.transactionId\r\n );\r\n }\r\n\r\n if (!params.ethersProviderUrl || typeof params.ethersProviderUrl !== 'string') {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Ethers provider URL is required',\r\n params.transactionId\r\n );\r\n }\r\n }\r\n\r\n /**\r\n * Validate authentication tokens passed as parameters\r\n * @param authTokens - The authentication tokens to validate\r\n * @returns true if valid, throws error if invalid\r\n */\r\n static validateAuthTokens(authTokens: SigningAuthTokens): boolean {\r\n if (!authTokens.persAccessToken || !authTokens.signerAuthToken) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.INVALID_TOKENS,\r\n 'Both PERS access token and signer auth token are required'\r\n );\r\n }\r\n \r\n return true;\r\n }\r\n}","/**\r\n * Extended window interface for WebAuthn flags\r\n */\r\ninterface ExtendedWindow extends Window {\r\n // landingAuthenticationInProgress?: boolean;\r\n webAuthnOperationInProgress?: boolean;\r\n}\r\n\r\n/**\r\n * Utility class for coordinating WebAuthn operations to prevent conflicts\r\n * Manages global state flags to ensure only one WebAuthn operation runs at a time\r\n */\r\nexport class WebAuthnCoordinator {\r\n\r\n /**\r\n * Check if a WebAuthn operation is currently in progress\r\n * @returns True if an operation is in progress, false otherwise\r\n */\r\n static checkConcurrentOperations(): boolean {\r\n if (typeof window !== 'undefined') {\r\n return Boolean((window as ExtendedWindow).webAuthnOperationInProgress);\r\n }\r\n return false;\r\n }\r\n\r\n /**\r\n * Set the WebAuthn operation in progress flag\r\n * @param inProgress - Whether an operation is in progress\r\n */\r\n static setOperationInProgress(inProgress: boolean): void {\r\n if (typeof window !== 'undefined') {\r\n (window as ExtendedWindow).webAuthnOperationInProgress = inProgress;\r\n }\r\n }\r\n}","import { CounterfactualWalletTransactionResponse, TransactionStatus } from '@explorins/pers-shared/browser';\r\nimport { LegacyTransaction } from '@explorins/web3-ts/types';\r\n\r\n/**\r\n * Combined transaction status type that includes both PERS and additional statuses\r\n */\r\nexport type CombinedTransactionStatus = TransactionStatus;\r\n\r\n/**\r\n * Transaction statuses that allow signing\r\n */\r\nexport const SIGNABLE_STATUSES = [TransactionStatus.PENDING_SIGNATURE, TransactionStatus.CREATED] as const;\r\n\r\n/**\r\n * Transaction status information for UI display\r\n */\r\nexport interface TransactionStatusInfo {\r\n transactionId: string;\r\n transactionStatus: CombinedTransactionStatus;\r\n message: string;\r\n}\r\n\r\n/**\r\n * Transaction signing result\r\n */\r\nexport interface TransactionSigningResult {\r\n success: boolean;\r\n transactionId: string;\r\n // transactionHash?: string;\r\n signature?: string;\r\n signingData?: CounterfactualWalletTransactionResponse | LegacyTransaction\r\n error?: string;\r\n statusInfo?: TransactionStatusInfo;\r\n // shouldRedirect?: boolean;\r\n // redirectUrl?: string;\r\n shouldShowStatus?: boolean;\r\n}\r\n\r\n/**\r\n * Transaction submission result for internal processing\r\n */\r\nexport interface SubmissionResult {\r\n submitResult: import('../types/pers-types').TransactionRequestResponseDTO;\r\n shouldRedirect: boolean;\r\n redirectUrl?: string;\r\n transactionHash: string | null;\r\n success: boolean;\r\n error?: string;\r\n}\r\n\r\n/**\r\n * Metadata for transaction parameters - string values only\r\n */\r\n/* export interface TransactionMetadata {\r\n [key: string]: string;\r\n} */\r\n\r\n/**\r\n * Authentication tokens required for transaction signing\r\n */\r\nexport interface SigningAuthTokens {\r\n signerAuthToken: string;\r\n persAccessToken: string;\r\n}\r\n\r\n/**\r\n * Transaction signing parameters\r\n */\r\nexport interface TransactionSigningParams {\r\n transactionId: string;\r\n tenantId: string;\r\n authTokens: SigningAuthTokens;\r\n ethersProviderUrl: string;\r\n returnUrl?: string;\r\n // metadata?: TransactionMetadata;\r\n // Optional wallet error state (eliminates need for localStorage)\r\n // walletRegistrationFailed?: boolean;\r\n // walletErrorDetails?: string;\r\n}","import { JsonRpcProvider } from 'ethers';\r\nimport { CounterfactualWalletTransactionResponse, TransactionStatus } from '@explorins/pers-shared/browser';\r\nimport { LegacyTransaction, TransactionRequestResponseDTO } from '../types/pers-types';\r\nimport { WalletService } from '../core/WalletService';\r\nimport { PersService } from '../core/PersService';\r\nimport { SigningService } from '../core/SigningService';\r\nimport { GetWalletResponse, KeyWallet } from '../core/KeyWallet';\r\nimport { TransactionErrorHandler } from './TransactionErrorHandler';\r\nimport { TransactionValidator } from './TransactionValidator';\r\nimport { WebAuthnCoordinator } from './WebAuthnCoordinator';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\nimport { TransactionSigningErrorCode } from '../types/error-types';\r\nimport { \r\n CombinedTransactionStatus, \r\n SIGNABLE_STATUSES, \r\n TransactionStatusInfo, \r\n TransactionSigningResult, \r\n SigningAuthTokens, \r\n TransactionSigningParams \r\n} from '../types/transaction-types';\r\nimport { PersSignerConfig } from '../shared';\r\n\r\n/**\r\n * Service for orchestrating transaction signing operations\r\n * Handles the complete flow from transaction preparation to submission\r\n * Uses constructor-based dependency injection for WebAuthn provider\r\n */\r\nexport class TransactionSigningService {\r\n private webAuthnProvider: WebAuthnProvider;\r\n\r\n constructor(config: PersSignerConfig) {\r\n this.webAuthnProvider = config.webAuthnProvider;\r\n }\r\n\r\n /**\r\n * Prepare transaction for signing - fetch and validate\r\n */\r\n private async prepareTransaction(\r\n transactionId: string, \r\n authTokens: SigningAuthTokens,\r\n tenantId: string\r\n ): Promise<{ preparedTransaction: TransactionRequestResponseDTO; updatedTokens: SigningAuthTokens }> {\r\n let preparedTransaction: TransactionRequestResponseDTO;\r\n try {\r\n preparedTransaction = await PersService.fetchPreparedTransaction(transactionId, authTokens.persAccessToken, tenantId);\r\n } catch (err: unknown) {\r\n // Use TransactionErrorHandler to process PERS API errors\r\n // This function never returns (throws an error), so execution won't continue past this line\r\n TransactionErrorHandler.processPersApiError(err, transactionId);\r\n // The line below will never be reached due to the throw above, but TypeScript needs it for type safety\r\n throw err;\r\n }\r\n // Check transaction status - only process signable transactions\r\n const transactionStatus = preparedTransaction.transactionStatus as CombinedTransactionStatus;\r\n \r\n // Validate transaction status is signable\r\n const isSignable = SIGNABLE_STATUSES.some(status => status === transactionStatus);\r\n if (!isSignable) {\r\n // Create status info for UI using TransactionErrorHandler\r\n const statusInfo = TransactionErrorHandler.createStatusInfo(transactionId, transactionStatus);\r\n \r\n throw { shouldShowStatus: true, statusInfo };\r\n }\r\n\r\n // Authenticate with PERS using backend signer token to set up signing account\r\n let updatedPersAccessToken = authTokens.persAccessToken;\r\n try {\r\n const persSignerAuth = await PersService.authenticateUser(authTokens.signerAuthToken, tenantId);\r\n \r\n // Update PERS access token with the new one that has signing account linked\r\n const newPersAccessToken = persSignerAuth.accessToken;\r\n if (newPersAccessToken) {\r\n updatedPersAccessToken = newPersAccessToken;\r\n }\r\n } catch (persSignerError: unknown) {\r\n const errorMessage = persSignerError instanceof Error ? persSignerError.message : String(persSignerError);\r\n console.error('❌ Failed to authenticate with PERS using signer token:', persSignerError);\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.PERS_AUTH_FAILED,\r\n `Failed to set up signing account: ${errorMessage}`,\r\n transactionId,\r\n persSignerError\r\n );\r\n }\r\n\r\n // If transaction is 'created' status but doesn't have signingData, fetch again with wallet-enabled token\r\n if (transactionStatus === TransactionStatus.CREATED && !PersService.isTransactionReadyForSigning(preparedTransaction)) {\r\n preparedTransaction = await PersService.fetchPreparedTransaction(transactionId, updatedPersAccessToken, tenantId);\r\n }\r\n \r\n if (!PersService.isTransactionReadyForSigning(preparedTransaction)) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.TRANSACTION_NOT_READY,\r\n 'Transaction is not ready for signing',\r\n transactionId\r\n );\r\n }\r\n\r\n return { \r\n preparedTransaction, \r\n updatedTokens: { ...authTokens, persAccessToken: updatedPersAccessToken }\r\n };\r\n }\r\n\r\n /**\r\n * Validate and prepare wallet for signing\r\n */\r\n private async prepareWallet(\r\n authTokens: SigningAuthTokens, \r\n ethersProviderUrl: string\r\n ): Promise<KeyWallet> {\r\n // Wallet validation will be handled through API responses - no localStorage needed\r\n \r\n let walletListResult: any;\r\n try {\r\n // Use new WalletService API with signer token\r\n walletListResult = await WalletService.listWallets(authTokens.signerAuthToken);\r\n } catch (error) {\r\n console.error('[TransactionSigningService] Wallet list API failed:', error);\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.WALLET_NOT_AVAILABLE,\r\n 'Failed to retrieve wallet information. Please refresh the page and try again.',\r\n undefined,\r\n error\r\n );\r\n }\r\n \r\n // Handle multiple response formats for compatibility\r\n const wallets = (walletListResult as any)?.items || \r\n (walletListResult as any)?.data?.wallets || \r\n (walletListResult as any)?.wallets || [];\r\n if (!wallets?.length) {\r\n console.error('[TransactionSigningService] No wallets found in response:', walletListResult);\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.WALLET_NOT_AVAILABLE,\r\n 'No wallet found for transaction signing. Please refresh the page and complete account setup.'\r\n );\r\n }\r\n\r\n // Create SigningService with injected WebAuthn provider\r\n const signingService = new SigningService(this.webAuthnProvider);\r\n\r\n // Create wallet instance with provider - use unknown type for flexibility\r\n const provider = new JsonRpcProvider(ethersProviderUrl);\r\n const wallet = new KeyWallet({\r\n authToken: authTokens.signerAuthToken,\r\n wallet: wallets[0] as unknown as GetWalletResponse & { boundToEvmNetwork: boolean },\r\n signingService: signingService,\r\n }).connect(provider);\r\n\r\n return wallet;\r\n }\r\n\r\n /**\r\n * Execute the transaction signing with WebAuthn coordination\r\n */\r\n private async executeTransactionSigning(\r\n wallet: KeyWallet,\r\n // preparedTransaction: TransactionRequestResponseDTO,\r\n signingData: CounterfactualWalletTransactionResponse | LegacyTransaction\r\n ): Promise<string> {\r\n // Check for concurrent WebAuthn operations\r\n if (WebAuthnCoordinator.checkConcurrentOperations()) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.WEBAUTHN_OPERATION_IN_PROGRESS,\r\n 'Another WebAuthn operation is in progress. Please wait and try again.'\r\n );\r\n }\r\n \r\n // Set WebAuthn operation flag for transaction signing\r\n WebAuthnCoordinator.setOperationInProgress(true);\r\n \r\n try {\r\n // const signingData = PersService.getTransactionDataForSigning(preparedTransaction);\r\n const signature = await wallet.signPersTransaction(signingData);\r\n return signature;\r\n } catch (signingError: unknown) {\r\n // Handle WebAuthn-specific errors\r\n const errorMessage = signingError instanceof Error ? signingError.message : String(signingError);\r\n if (errorMessage?.includes('NotAllowedError') || \r\n errorMessage?.includes('timed out') || \r\n errorMessage?.includes('not allowed')) {\r\n throw TransactionErrorHandler.createError(\r\n TransactionSigningErrorCode.SIGNING_CANCELLED,\r\n 'Transaction signing was cancelled or timed out. Please try again and complete the biometric authentication when prompted.',\r\n undefined,\r\n signingError\r\n );\r\n }\r\n throw signingError;\r\n } finally {\r\n // Clear WebAuthn operation flag\r\n WebAuthnCoordinator.setOperationInProgress(false);\r\n }\r\n }\r\n\r\n async getPersSigningData(data: {\r\n transactionId: string,\r\n authTokens: SigningAuthTokens,\r\n tenantId: string\r\n }){\r\n // Step 1: Prepare transaction for signing\r\n const { preparedTransaction } = await this.prepareTransaction(data.transactionId, data.authTokens, data.tenantId);\r\n // const signingData = PersService.getTransactionDataForSigning(preparedTransaction);\r\n const signingData = PersService.getTransactionDataForSigning(preparedTransaction); \r\n return signingData;\r\n }\r\n\r\n /**\r\n * Main transaction signing orchestration method\r\n * Handles the complete flow from preparation to submission\r\n * @param params - Transaction signing parameters\r\n * @returns Promise resolving to transaction signing result\r\n * @throws TransactionSigningError for validation and operation failures\r\n */\r\n async signTransaction(\r\n params: TransactionSigningParams,\r\n signingData: CounterfactualWalletTransactionResponse | LegacyTransaction\r\n\r\n ): Promise<TransactionSigningResult> {\r\n // Validate input parameters first using TransactionValidator\r\n TransactionValidator.validateSigningParams(params);\r\n \r\n const { transactionId, authTokens, ethersProviderUrl } = params;\r\n \r\n console.info(`[TransactionSigningService] Starting signature process for ${transactionId}`);\r\n \r\n try {\r\n \r\n \r\n // Step 2: Prepare wallet for signing\r\n const wallet = await this.prepareWallet(authTokens, ethersProviderUrl);\r\n\r\n // Step 3: Execute transaction signing\r\n const signature = await this.executeTransactionSigning(wallet, signingData);\r\n \r\n console.info(`[TransactionSigningService] Completed signing successfully: ${transactionId}`);\r\n \r\n return {\r\n success: true,\r\n transactionId,\r\n signingData,\r\n // transactionHash: submitResult.transaction?.transactionHash ?? undefined,\r\n signature,\r\n };\r\n \r\n } catch (error: unknown) {\r\n console.error(`[TransactionSigningService] Signing failed for ${transactionId}:`, error);\r\n \r\n // Handle special cases\r\n const structuredError = error as { shouldShowStatus?: boolean; statusInfo?: TransactionStatusInfo };\r\n if (structuredError.shouldShowStatus && structuredError.statusInfo) {\r\n return {\r\n success: false,\r\n transactionId,\r\n shouldShowStatus: true,\r\n statusInfo: structuredError.statusInfo,\r\n error: structuredError.statusInfo.message\r\n };\r\n }\r\n \r\n const errorMessage = error instanceof Error ? error.message : String(error);\r\n return {\r\n success: false,\r\n transactionId,\r\n error: errorMessage\r\n };\r\n }\r\n }\r\n}","\r\n/**\r\n * Handles transaction submission, success flows, and redirect logic\r\n */\r\nexport class TransactionSubmissionHandler {\r\n \r\n /**\r\n * Create redirect URL with transaction parameters\r\n * @param returnUrl - Base return URL\r\n * @param transactionHash - Transaction hash to include\r\n * @param metadata - Optional metadata to include as parameters\r\n * @returns Promise resolving to the complete redirect URL\r\n */\r\n static async createRedirectUrl(\r\n returnUrl: string,\r\n transactionHash: string,\r\n ): Promise<string> {\r\n const additionalParams: Record<string, string> = {\r\n txHash: transactionHash,\r\n success: 'true'\r\n };\r\n\r\n // Build URL with required params\r\n const paramKeys = ['transactionId', 'returnUrl', 'jwt', 'token'];\r\n const url = new URL(returnUrl, window.location.origin);\r\n // Add required params if present in additionalParams\r\n paramKeys.forEach(key => {\r\n if (additionalParams[key]) {\r\n url.searchParams.set(key, additionalParams[key]);\r\n }\r\n });\r\n // Add all other params\r\n Object.entries(additionalParams).forEach(([key, value]) => {\r\n if (!paramKeys.includes(key)) {\r\n url.searchParams.set(key, value);\r\n }\r\n });\r\n return url.toString();\r\n }\r\n}","/**\r\n * Browser-specific WebAuthn provider using DFNS browser SDK\r\n */\r\n\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\nimport type { WebAuthnProvider, WebAuthnConfig } from './WebAuthnProvider.types';\r\n\r\nclass DfnsBrowserWebAuthnProvider implements WebAuthnProvider {\r\n private config: WebAuthnConfig;\r\n\r\n constructor(config: WebAuthnConfig) {\r\n this.config = config;\r\n }\r\n\r\n async create(challenge: any): Promise<any> {\r\n try {\r\n const { WebAuthnSigner } = await import('@dfns/sdk-browser');\r\n const webAuthn = new WebAuthnSigner({\r\n relyingParty: this.config.relyingParty,\r\n });\r\n return await webAuthn.create(challenge);\r\n } catch (error) {\r\n console.error('Failed to load WebAuthn for browser:', error);\r\n throw new Error('WebAuthn not available in this environment');\r\n }\r\n }\r\n\r\n async sign(challenge: any): Promise<any> {\r\n try {\r\n const { WebAuthnSigner } = await import('@dfns/sdk-browser');\r\n const webAuthn = new WebAuthnSigner({\r\n relyingParty: this.config.relyingParty,\r\n });\r\n return await webAuthn.sign(challenge);\r\n } catch (error) {\r\n console.error('Failed to sign with WebAuthn for browser:', error);\r\n throw new Error('WebAuthn signing failed');\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * Get WebAuthn provider for browser environments\r\n */\r\nexport async function getBrowserWebAuthnProvider(): Promise<WebAuthnProvider> {\r\n const config: WebAuthnConfig = {\r\n relyingParty: {\r\n id: typeof window !== 'undefined' ? window.location.hostname : SIGNER_CONFIG.DEFAULT_RELYING_PARTY_ID,\r\n name: SIGNER_CONFIG.DEFAULT_RELYING_PARTY_NAME,\r\n origin: typeof window !== 'undefined' ? window.location.origin : SIGNER_CONFIG.DEFAULT_RELYING_PARTY_ID,\r\n }\r\n };\r\n \r\n return new DfnsBrowserWebAuthnProvider(config)\r\n}","/**\r\n * React Native-specific WebAuthn provider using DFNS React Native SDK\r\n * Falls back to browser implementation for React Native Web (Expo Web)\r\n */\r\n\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\nimport type { WebAuthnProvider, WebAuthnConfig } from './WebAuthnProvider.types';\r\n\r\nclass DfnsReactNativeWebAuthnProvider implements WebAuthnProvider {\r\n private config: WebAuthnConfig;\r\n\r\n constructor(config: WebAuthnConfig) {\r\n this.config = config;\r\n }\r\n\r\n private async executeWithFallback(operation: 'create' | 'sign', challenge: any): Promise<any> {\r\n try {\r\n const { PasskeysSigner } = await import('@dfns/sdk-react-native');\r\n const signer = new PasskeysSigner({\r\n relyingParty: this.config.relyingParty,\r\n });\r\n return await signer[operation](challenge);\r\n } catch (error: any) {\r\n console.error(`Failed to ${operation} with PasskeysSigner for React Native:`, error);\r\n \r\n // Check for missing react-native-passkey package\r\n if (error?.message?.includes('react-native-passkey') || \r\n error?.message?.includes('doesn\\'t seem to be linked') ||\r\n error?.message?.includes('Expo managed workflow')) {\r\n throw new Error(\r\n `Native passkey dependency missing. Please install 'react-native-passkey' in your app:\\n\\n` +\r\n `npm install react-native-passkey\\n` +\r\n `npx pod-install ios\\n\\n` +\r\n `For Expo projects, you may need to use development builds.\\n` +\r\n `See setup guide: https://github.com/f-23/react-native-passkey#installation`\r\n );\r\n }\r\n \r\n // Check if this is React Native Web where @dfns/sdk-react-native doesn't work\r\n if (error?.message?.includes('web is not supported') || \r\n (typeof window !== 'undefined' && typeof document !== 'undefined')) {\r\n console.log(`Falling back to browser WebAuthn for React Native Web (${operation})...`);\r\n \r\n try {\r\n // Import and use browser WebAuthn provider\r\n const { getBrowserWebAuthnProvider } = await import('./WebAuthnProvider.browser');\r\n const browserProvider = await getBrowserWebAuthnProvider();\r\n return await browserProvider[operation](challenge);\r\n } catch (browserError) {\r\n console.error(`Browser WebAuthn fallback also failed for ${operation}:`, browserError);\r\n throw new Error(`WebAuthn ${operation} failed: React Native failed (${error?.message}), Browser fallback failed (${browserError}). Consider implementing external wallet signing.`);\r\n }\r\n }\r\n \r\n throw new Error(`PasskeysSigner ${operation} failed: ${error?.message}`);\r\n }\r\n }\r\n\r\n async create(challenge: any): Promise<any> {\r\n return this.executeWithFallback('create', challenge);\r\n }\r\n\r\n async sign(challenge: any): Promise<any> {\r\n return this.executeWithFallback('sign', challenge);\r\n }\r\n}\r\n\r\n/**\r\n * Get WebAuthn provider for React Native environments\r\n */\r\nexport async function getReactNativeWebAuthnProvider(): Promise<WebAuthnProvider> {\r\n const config: WebAuthnConfig = {\r\n relyingParty: {\r\n id: SIGNER_CONFIG.DEFAULT_RELYING_PARTY_ID,\r\n name: SIGNER_CONFIG.DEFAULT_RELYING_PARTY_NAME,\r\n }\r\n };\r\n \r\n return new DfnsReactNativeWebAuthnProvider(config);\r\n}","/**\r\n * JWT Utility Functions\r\n * \r\n * Browser-compatible JWT handling without external dependencies\r\n */\r\n\r\n// JWT types\r\nexport interface JWTPayload {\r\n email?: string;\r\n identifierEmail?: string;\r\n userId?: string;\r\n tenantId?: string;\r\n transactionId?: string;\r\n exp?: number;\r\n [key: string]: any;\r\n}\r\n\r\nexport interface JWTExtractionResult {\r\n payload: JWTPayload | null;\r\n isExpired: boolean;\r\n}\r\n\r\n/**\r\n * Extract and validate JWT token payload\r\n * Uses a browser-compatible approach without external dependencies\r\n */\r\nexport function extractJWTFromToken(jwtToken: string): JWTExtractionResult {\r\n if (!jwtToken) {\r\n return { payload: null, isExpired: false };\r\n }\r\n\r\n try {\r\n // Use a more compatible JWT decoding approach\r\n // Split JWT into parts\r\n const parts = jwtToken.split('.');\r\n if (parts.length !== 3) {\r\n throw new Error('Invalid JWT format');\r\n }\r\n \r\n // Decode the payload (middle part)\r\n const payload = JSON.parse(atob(parts[1])) as JWTPayload;\r\n \r\n // Check expiration\r\n const isExpired = payload.exp ? Date.now() >= payload.exp * 1000 : false;\r\n \r\n return { payload, isExpired };\r\n } catch (error) {\r\n console.warn('JWT decode failed:', error);\r\n return { payload: null, isExpired: false };\r\n }\r\n}\r\n\r\n/**\r\n * Check if a JWT token is expired\r\n */\r\nexport function isJWTExpired(jwtToken: string): boolean {\r\n const { isExpired } = extractJWTFromToken(jwtToken);\r\n return isExpired;\r\n}\r\n\r\n/**\r\n * Get JWT payload without validation\r\n */\r\nexport function getJWTPayload(jwtToken: string): JWTPayload | null {\r\n const { payload } = extractJWTFromToken(jwtToken);\r\n return payload;\r\n}","/**\r\n * In-memory User Cache\r\n * \r\n * Provides secure, storage-free user authentication caching\r\n * Uses memory-only storage with TTL expiration for security\r\n */\r\n\r\nimport type { AuthenticatedUser } from '../types';\r\n\r\ninterface CachedUser {\r\n user: AuthenticatedUser;\r\n expiresAt: number;\r\n}\r\n\r\n/**\r\n * In-memory user cache with TTL expiration\r\n * Security-first approach - no persistent storage\r\n */\r\nexport class UserCache {\r\n private static cache = new Map<string, CachedUser>();\r\n private static readonly DEFAULT_TTL_MS = 300000; // 5 minutes\r\n \r\n /**\r\n * Get cached user by identifier\r\n * @param identifier - User identifier (email/userId)\r\n * @returns Cached user or null if not found/expired\r\n */\r\n static get(identifier: string): AuthenticatedUser | null {\r\n const cached = this.cache.get(identifier);\r\n \r\n if (!cached) {\r\n return null;\r\n }\r\n \r\n // Check if expired\r\n if (Date.now() > cached.expiresAt) {\r\n this.cache.delete(identifier);\r\n return null;\r\n }\r\n \r\n return cached.user;\r\n }\r\n \r\n /**\r\n * Cache user with TTL\r\n * @param identifier - User identifier\r\n * @param user - Authenticated user data\r\n * @param ttlMs - Time to live in milliseconds (default: 5 minutes)\r\n */\r\n static set(identifier: string, user: AuthenticatedUser, ttlMs: number = this.DEFAULT_TTL_MS): void {\r\n this.cache.set(identifier, {\r\n user,\r\n expiresAt: Date.now() + ttlMs\r\n });\r\n }\r\n \r\n /**\r\n * Remove user from cache\r\n * @param identifier - User identifier\r\n */\r\n static delete(identifier: string): boolean {\r\n return this.cache.delete(identifier);\r\n }\r\n \r\n /**\r\n * Clear all cached users\r\n */\r\n static clear(): void {\r\n this.cache.clear();\r\n }\r\n \r\n /**\r\n * Get cache size (for debugging)\r\n */\r\n static size(): number {\r\n return this.cache.size;\r\n }\r\n \r\n /**\r\n * Clean up expired entries\r\n */\r\n static cleanup(): number {\r\n const now = Date.now();\r\n let cleaned = 0;\r\n \r\n for (const [identifier, cached] of this.cache.entries()) {\r\n if (now > cached.expiresAt) {\r\n this.cache.delete(identifier);\r\n cleaned++;\r\n }\r\n }\r\n \r\n return cleaned;\r\n }\r\n}","/**\r\n * PERS Blockchain Signer SDK\r\n * \r\n * A lightweight blockchain transaction signing SDK with WebAuthn authentication.\r\n * Provides 5 focused methods for complete transaction lifecycle management:\r\n * \r\n * 1. loginUser(jwtToken) - Authenticate user with 5-minute caching\r\n * 2. signTransaction(signingData, jwtToken) - Sign transactions with auto-login\r\n * 3. submitTransaction(signedTx, jwtToken) - Submit signed transactions to blockchain\r\n * 4. signPersTransaction(jwtToken) - Legacy one-liner for backward compatibility\r\n * 5. signAndSubmitPersTransaction(jwtToken) - Complete sign + submit flow\r\n * \r\n * @example\r\n * ```typescript\r\n * import { createPersSignerSDK } from '@explorins/pers-signer';\r\n * \r\n * const sdk = createPersSignerSDK({\r\n * webAuthnProvider: myWebAuthnProvider,\r\n * ethersProviderUrl: 'https://ethereum-rpc.com'\r\n * });\r\n * \r\n * // Quick sign and submit\r\n * const result = await sdk.signAndSubmitPersTransaction(jwtToken);\r\n * if (result.success) {\r\n * console.log('Transaction submitted:', result.transactionHash);\r\n * }\r\n * ```\r\n */\r\n\r\nimport { AuthenticationService, PersService } from '../core';\r\nimport { TransactionSigningService } from '../transaction';\r\nimport { setConfigProvider, WebConfigProvider } from '../platform/ConfigProvider';\r\nimport { SIGNER_CONFIG } from '../config/constants';\r\nimport { extractJWTFromToken } from '../utils/jwt';\r\nimport { UserCache } from '../utils/user-cache';\r\nimport type { WebAuthnProvider } from '../platform/WebAuthnProvider.types';\r\nimport type { \r\n AuthenticatedUser,\r\n LegacyTransaction, \r\n} from '../types';\r\nimport { SubmissionResult, TransactionSigningResult } from '../shared';\r\nimport { CounterfactualWalletTransactionResponse } from '@explorins/pers-shared';\r\n\r\n/**\r\n * Configuration interface for the PERS Signer SDK\r\n * \r\n * @interface PersSignerConfig\r\n * @property {string} [tenantId] - Optional tenant identifier for multi-tenant applications\r\n * @property {string} [ethersProviderUrl] - Custom Ethereum RPC provider URL\r\n * @property {WebAuthnProvider} webAuthnProvider - WebAuthn provider for secure authentication\r\n * @property {string} [apiUrl] - Custom API base URL (defaults to production)\r\n * @property {string} [relyingPartyName] - WebAuthn relying party name for authentication\r\n */\r\nexport interface PersSignerConfig {\r\n tenantId?: string;\r\n ethersProviderUrl?: string;\r\n webAuthnProvider: WebAuthnProvider;\r\n apiUrl?: string;\r\n relyingPartyName?: string;\r\n}\r\n\r\n/**\r\n * PERS Blockchain Signer SDK Class\r\n * \r\n * Main SDK class providing blockchain transaction signing capabilities with WebAuthn authentication.\r\n * Implements a clean 5-method API for complete transaction lifecycle management.\r\n * \r\n * Features:\r\n * - WebAuthn-based secure authentication\r\n * - 5-minute user session caching\r\n * - Automatic transaction data fetching\r\n * - Blockchain transaction signing and submission\r\n * - Multi-tenant support\r\n * \r\n * @class PersSignerSDK\r\n */\r\nexport class PersSignerSDK {\r\n private config: PersSignerConfig;\r\n private authenticationService: AuthenticationService;\r\n private transactionSigningService: TransactionSigningService;\r\n\r\n /**\r\n * Initialize the PERS Signer SDK\r\n * \r\n * @param {PersSignerConfig} config - SDK configuration object\r\n * @throws {Error} If required configuration is missing\r\n */\r\n constructor(config: PersSignerConfig) {\r\n this.config = config;\r\n \r\n setConfigProvider(new WebConfigProvider({\r\n apiUrl: config.apiUrl || SIGNER_CONFIG.DEFAULT_SIGNER_API_URL,\r\n relyingParty: {\r\n id: typeof window !== 'undefined' ? window.location.hostname : 'localhost',\r\n name: config.relyingPartyName || SIGNER_CONFIG.DEFAULT_RELYING_PARTY_NAME,\r\n origin: typeof window !== 'undefined' ? window.location.origin : undefined,\r\n },\r\n }));\r\n \r\n this.authenticationService = new AuthenticationService(this.config);\r\n this.transactionSigningService = new TransactionSigningService(config);\r\n }\r\n\r\n /**\r\n * Authenticate user and cache session for 5 minutes\r\n * \r\n * Validates JWT token, authenticates with both signer and PERS backends,\r\n * and caches the authenticated user session to avoid repeated authentication.\r\n * \r\n * @param {string} jwtToken - JWT token containing user identifier and tenant info\r\n * @returns {Promise<AuthenticatedUser>} Authenticated user with access tokens\r\n * @throws {Error} If JWT is invalid, expired, or authentication fails\r\n * \r\n * @example\r\n * ```typescript\r\n * try {\r\n * const user = await sdk.loginUser(jwtToken);\r\n * console.log('Authenticated:', user.identifier);\r\n * } catch (error) {\r\n * console.error('Authentication failed:', error.message);\r\n * }\r\n * ```\r\n */\r\n async loginUser(jwtToken: string): Promise<AuthenticatedUser> {\r\n if (!jwtToken || typeof jwtToken !== 'string') {\r\n throw new Error('JWT token is required and must be a string');\r\n }\r\n\r\n const { payload, isExpired } = extractJWTFromToken(jwtToken);\r\n \r\n if (!payload || isExpired) {\r\n throw new Error('Invalid or expired JWT token');\r\n }\r\n\r\n const identifier = payload.identifierEmail || payload.email || payload.userId;\r\n const tenantId = payload.tenantId || this.config.tenantId || '';\r\n \r\n if (!identifier) {\r\n throw new Error('JWT token missing user identifier (identifierEmail, email, or userId)');\r\n }\r\n\r\n // Check cache first\r\n const cachedUser = UserCache.get(identifier);\r\n if (cachedUser && cachedUser.tenantId === tenantId && Date.now() < cachedUser.expiresAt) {\r\n return cachedUser;\r\n }\r\n\r\n try {\r\n // Authenticate and cache\r\n const authResult = await this.authenticationService.combinedAuthentication(\r\n identifier,\r\n jwtToken,\r\n );\r\n\r\n const user: AuthenticatedUser = {\r\n identifier: authResult.identifier,\r\n signerAuthToken: authResult.signerAuthToken,\r\n persAccessToken: authResult.persAccessToken,\r\n tenantId,\r\n expiresAt: Date.now() + 300000 // 5 minutes\r\n };\r\n\r\n UserCache.set(identifier, user);\r\n return user;\r\n } catch (error) {\r\n throw new Error(`Authentication failed: ${error instanceof Error ? error.message : 'Unknown error'}`);\r\n }\r\n }\r\n\r\n /**\r\n * Sign a PERS transaction (legacy compatibility method)\r\n * \r\n * Automatically handles user authentication, transaction data fetching,\r\n * and transaction signing in a single call. This is the legacy method\r\n * maintained for backward compatibility.\r\n * \r\n * @param {string} jwtToken - JWT token containing transaction ID and user info\r\n * @returns {Promise<TransactionSigningResult>} Signing result with signature and metadata\r\n * @throws {Error} If authentication fails, transaction ID missing, or signing fails\r\n * \r\n * @example\r\n * ```typescript\r\n * try {\r\n * const result = await sdk.signPersTransaction(jwtToken);\r\n * if (result.success) {\r\n * console.log('Transaction signed:', result.signature);\r\n * }\r\n * } catch (error) {\r\n * console.error('Signing failed:', error.message);\r\n * }\r\n * ```\r\n */\r\n async signPersTransaction(jwtToken: string): Promise<TransactionSigningResult> {\r\n if (!jwtToken || typeof jwtToken !== 'string') {\r\n throw new Error('JWT token is required and must be a string');\r\n }\r\n\r\n const user = await this.loginUser(jwtToken);\r\n const { payload } = extractJWTFromToken(jwtToken);\r\n\r\n if (!payload?.transactionId) {\r\n throw new Error('JWT token missing transactionId in payload');\r\n }\r\n \r\n const authTokens = {\r\n signerAuthToken: user.signerAuthToken,\r\n persAccessToken: user.persAccessToken\r\n };\r\n \r\n try {\r\n const persSigningData = await this.transactionSigningService.getPersSigningData({\r\n transactionId: payload.transactionId,\r\n authTokens,\r\n tenantId: user.tenantId\r\n });\r\n \r\n const result = await this.signTransaction(persSigningData, jwtToken);\r\n\r\n if (!result.success) {\r\n throw new Error(result.error || 'Transaction signing failed');\r\n }\r\n\r\n return result;\r\n } catch (error) {\r\n throw new Error(`PERS transaction signing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);\r\n }\r\n }\r\n\r\n /**\r\n * Sign a transaction with provided signing data\r\n * \r\n * Low-level method to sign transactions when you already have the signing data.\r\n * Automatically handles user authentication and applies the blockchain signature.\r\n * \r\n * @param {CounterfactualWalletTransactionResponse | LegacyTransaction} signingData - Transaction data to sign\r\n * @param {string} jwtToken - JWT token containing transaction ID and user info\r\n * @returns {Promise<TransactionSigningResult>} Signing result with signature and metadata\r\n * @throws {Error} If authentication fails, transaction ID missing, or signing fails\r\n * \r\n * @example\r\n * ```typescript\r\n * const signingData = await getTransactionData(transactionId);\r\n * const result = await sdk.signTransaction(signingData, jwtToken);\r\n * console.log('Signed transaction:', result.signature);\r\n * ```\r\n */\r\n async signTransaction(signingData: CounterfactualWalletTransactionResponse | LegacyTransaction, jwtToken: string): Promise<TransactionSigningResult> {\r\n if (!signingData) {\r\n throw new Error('Signing data is required');\r\n }\r\n if (!jwtToken || typeof jwtToken !== 'string') {\r\n throw new Error('JWT token is required and must be a string');\r\n }\r\n\r\n const user = await this.loginUser(jwtToken);\r\n const { payload } = extractJWTFromToken(jwtToken);\r\n\r\n if (!payload?.transactionId) {\r\n throw new Error('JWT token missing transactionId in payload');\r\n }\r\n\r\n const authTokens = {\r\n signerAuthToken: user.signerAuthToken,\r\n persAccessToken: user.persAccessToken\r\n };\r\n\r\n try {\r\n const result = await this.transactionSigningService.signTransaction({\r\n transactionId: payload.transactionId,\r\n tenantId: user.tenantId,\r\n authTokens,\r\n ethersProviderUrl: this.config.ethersProviderUrl || ''\r\n }, signingData);\r\n\r\n return result;\r\n } catch (error) {\r\n throw new Error(`Transaction signing failed: ${error instanceof Error ? error.message : 'Unknown error'}`);\r\n }\r\n }\r\n\r\n /**\r\n * Complete transaction flow: sign and submit in one call\r\n * \r\n * Convenience method that combines signing and submission into a single operation.\r\n * This is the recommended method for most use cases as it handles the complete\r\n * transaction lifecycle automatically.\r\n * \r\n * @param {string} jwtToken - JWT token containing transaction ID and user info\r\n * @returns {Promise<SubmissionResult>} Submission result with transaction hash and status\r\n * @throws {Error} If authentication, signing, or submission fails\r\n * \r\n * @example\r\n * ```typescript\r\n * try {\r\n * const result = await sdk.signAndSubmitPersTransaction(jwtToken);\r\n * if (result.success) {\r\n * console.log('Transaction completed:', result.transactionHash);\r\n * if (result.shouldRedirect) {\r\n * window.location.href = result.redirectUrl;\r\n * }\r\n * }\r\n * } catch (error) {\r\n * console.error('Transaction failed:', error.message);\r\n * }\r\n * ```\r\n */\r\n async signAndSubmitPersTransaction(jwtToken: string): Promise<SubmissionResult> {\r\n if (!jwtToken || typeof jwtToken !== 'string') {\r\n throw new Error('JWT token is required and must be a string');\r\n }\r\n\r\n try {\r\n const signedTx = await this.signPersTransaction(jwtToken);\r\n const submittedTx = await this.submitTransaction(signedTx, jwtToken);\r\n return submittedTx;\r\n } catch (error) {\r\n throw new Error(`Sign and submit transaction failed: ${error instanceof Error ? error.message : 'Unknown error'}`);\r\n }\r\n }\r\n /**\r\n * Submit a signed transaction to the blockchain\r\n * \r\n * Takes a signed transaction result and submits it to the blockchain network.\r\n * Returns detailed submission results including transaction hash and any\r\n * redirect information for UI flows.\r\n * \r\n * @param {TransactionSigningResult} signingResult - Result from a successful transaction signing\r\n * @param {string} jwtToken - JWT token containing tenant and user info\r\n * @returns {Promise<SubmissionResult>} Submission result with transaction hash and status\r\n * @throws {Error} If signing result is invalid, JWT is missing tenantId, or submission fails\r\n * \r\n * @example\r\n * ```typescript\r\n * const signedTx = await sdk.signPersTransaction(jwtToken);\r\n * const result = await sdk.submitTransaction(signedTx, jwtToken);\r\n * console.log('Transaction submitted:', result.transactionHash);\r\n * ```\r\n */\r\n async submitTransaction(signingResult: TransactionSigningResult, jwtToken: string): Promise<SubmissionResult> {\r\n if (!signingResult) {\r\n throw new Error('Signing result is required');\r\n }\r\n if (!jwtToken || typeof jwtToken !== 'string') {\r\n throw new Error('JWT token is required and must be a string');\r\n }\r\n\r\n if (!signingResult.success || !signingResult.signature || !signingResult.signingData) {\r\n throw new Error('Invalid signing result: must be successful with signature and signing data');\r\n }\r\n\r\n const { payload } = extractJWTFromToken(jwtToken);\r\n\r\n if (!payload?.tenantId) {\r\n throw new Error('JWT token missing tenantId in payload');\r\n }\r\n\r\n const user = await this.loginUser(jwtToken);\r\n\r\n try {\r\n const submitResult = await PersService.submitTransaction(\r\n signingResult.transactionId,\r\n signingResult.signature,\r\n user.persAccessToken,\r\n signingResult.signingData.format,\r\n payload.tenantId\r\n );\r\n \r\n // Transform response to SubmissionResult\r\n return {\r\n success: true,\r\n transactionHash: submitResult.transaction.transactionHash,\r\n shouldRedirect: false, // Can be configured based on business requirements\r\n redirectUrl: undefined, // Can be set based on business logic\r\n error: undefined,\r\n submitResult: submitResult\r\n };\r\n } catch (error) {\r\n throw new Error(`Transaction submission failed: ${error instanceof Error ? error.message : 'Unknown error'}`);\r\n }\r\n }\r\n\r\n /**\r\n * Clear user authentication cache\r\n * \r\n * Removes all cached user sessions, forcing fresh authentication\r\n * on the next method call. Useful for logout scenarios or when\r\n * switching between different user contexts.\r\n * \r\n * @example\r\n * ```typescript\r\n * // Clear cache on user logout\r\n * sdk.clearCache();\r\n * console.log('User cache cleared');\r\n * ```\r\n */\r\n clearCache(): void {\r\n UserCache.clear();\r\n }\r\n}\r\n\r\n/**\r\n * Create a new PERS Signer SDK instance\r\n * \r\n * Factory function to create and configure a new SDK instance with the provided\r\n * configuration. This is the recommended way to initialize the SDK.\r\n * \r\n * @param {PersSignerConfig} config - SDK configuration object\r\n * @returns {PersSignerSDK} Configured SDK instance ready for use\r\n * @throws {Error} If required configuration is missing or invalid\r\n * \r\n * @example\r\n * ```typescript\r\n * import { createPersSignerSDK, getWebAuthnProvider } from '@explorins/pers-signer';\r\n * \r\n * const webAuthnProvider = await getWebAuthnProvider();\r\n * const sdk = createPersSignerSDK({\r\n * webAuthnProvider,\r\n * ethersProviderUrl: 'https://mainnet.infura.io/v3/YOUR_KEY',\r\n * tenantId: 'your-tenant-id'\r\n * });\r\n * ```\r\n */\r\nexport function createPersSignerSDK(config: PersSignerConfig): PersSignerSDK {\r\n return new PersSignerSDK(config);\r\n}","var global = typeof self !== 'undefined' ? self : this;\nvar __self__ = (function () {\nfunction F() {\nthis.fetch = false;\nthis.DOMException = global.DOMException\n}\nF.prototype = global;\nreturn new F();\n})();\n(function(self) {\n\nvar irrelevant = (function (exports) {\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob:\n 'FileReader' in self &&\n 'Blob' in self &&\n (function() {\n try {\n new Blob();\n return true\n } catch (e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n };\n\n function isDataView(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ];\n\n var isArrayBufferView =\n ArrayBuffer.isView ||\n function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n };\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name);\n }\n if (/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value);\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift();\n return {done: value === undefined, value: value}\n }\n };\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n };\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {};\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value);\n }, this);\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1]);\n }, this);\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name]);\n }, this);\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name);\n value = normalizeValue(value);\n var oldValue = this.map[name];\n this.map[name] = oldValue ? oldValue + ', ' + value : value;\n };\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)];\n };\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name);\n return this.has(name) ? this.map[name] : null\n };\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n };\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value);\n };\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this);\n }\n }\n };\n\n Headers.prototype.keys = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push(name);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.values = function() {\n var items = [];\n this.forEach(function(value) {\n items.push(value);\n });\n return iteratorFor(items)\n };\n\n Headers.prototype.entries = function() {\n var items = [];\n this.forEach(function(value, name) {\n items.push([name, value]);\n });\n return iteratorFor(items)\n };\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries;\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true;\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result);\n };\n reader.onerror = function() {\n reject(reader.error);\n };\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsArrayBuffer(blob);\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader();\n var promise = fileReaderReady(reader);\n reader.readAsText(blob);\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf);\n var chars = new Array(view.length);\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i]);\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength);\n view.set(new Uint8Array(buf));\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false;\n\n this._initBody = function(body) {\n this._bodyInit = body;\n if (!body) {\n this._bodyText = '';\n } else if (typeof body === 'string') {\n this._bodyText = body;\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body;\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body;\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString();\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer);\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer]);\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body);\n } else {\n this._bodyText = body = Object.prototype.toString.call(body);\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8');\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type);\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8');\n }\n }\n };\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n };\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n };\n }\n\n this.text = function() {\n var rejected = consumed(this);\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n };\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n };\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n };\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT'];\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase();\n return methods.indexOf(upcased) > -1 ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {};\n var body = options.body;\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url;\n this.credentials = input.credentials;\n if (!options.headers) {\n this.headers = new Headers(input.headers);\n }\n this.method = input.method;\n this.mode = input.mode;\n this.signal = input.signal;\n if (!body && input._bodyInit != null) {\n body = input._bodyInit;\n input.bodyUsed = true;\n }\n } else {\n this.url = String(input);\n }\n\n this.credentials = options.credentials || this.credentials || 'same-origin';\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers);\n }\n this.method = normalizeMethod(options.method || this.method || 'GET');\n this.mode = options.mode || this.mode || null;\n this.signal = options.signal || this.signal;\n this.referrer = null;\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body);\n }\n\n Request.prototype.clone = function() {\n return new Request(this, {body: this._bodyInit})\n };\n\n function decode(body) {\n var form = new FormData();\n body\n .trim()\n .split('&')\n .forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=');\n var name = split.shift().replace(/\\+/g, ' ');\n var value = split.join('=').replace(/\\+/g, ' ');\n form.append(decodeURIComponent(name), decodeURIComponent(value));\n }\n });\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers();\n // Replace instances of \\r\\n and \\n followed by at least one space or horizontal tab with a space\n // https://tools.ietf.org/html/rfc7230#section-3.2\n var preProcessedHeaders = rawHeaders.replace(/\\r?\\n[\\t ]+/g, ' ');\n preProcessedHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':');\n var key = parts.shift().trim();\n if (key) {\n var value = parts.join(':').trim();\n headers.append(key, value);\n }\n });\n return headers\n }\n\n Body.call(Request.prototype);\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {};\n }\n\n this.type = 'default';\n this.status = options.status === undefined ? 200 : options.status;\n this.ok = this.status >= 200 && this.status < 300;\n this.statusText = 'statusText' in options ? options.statusText : 'OK';\n this.headers = new Headers(options.headers);\n this.url = options.url || '';\n this._initBody(bodyInit);\n }\n\n Body.call(Response.prototype);\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n };\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''});\n response.type = 'error';\n return response\n };\n\n var redirectStatuses = [301, 302, 303, 307, 308];\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n };\n\n exports.DOMException = self.DOMException;\n try {\n new exports.DOMException();\n } catch (err) {\n exports.DOMException = function(message, name) {\n this.message = message;\n this.name = name;\n var error = Error(message);\n this.stack = error.stack;\n };\n exports.DOMException.prototype = Object.create(Error.prototype);\n exports.DOMException.prototype.constructor = exports.DOMException;\n }\n\n function fetch(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init);\n\n if (request.signal && request.signal.aborted) {\n return reject(new exports.DOMException('Aborted', 'AbortError'))\n }\n\n var xhr = new XMLHttpRequest();\n\n function abortXhr() {\n xhr.abort();\n }\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n };\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL');\n var body = 'response' in xhr ? xhr.response : xhr.responseText;\n resolve(new Response(body, options));\n };\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'));\n };\n\n xhr.onabort = function() {\n reject(new exports.DOMException('Aborted', 'AbortError'));\n };\n\n xhr.open(request.method, request.url, true);\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true;\n } else if (request.credentials === 'omit') {\n xhr.withCredentials = false;\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob';\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value);\n });\n\n if (request.signal) {\n request.signal.addEventListener('abort', abortXhr);\n\n xhr.onreadystatechange = function() {\n // DONE (success or failure)\n if (xhr.readyState === 4) {\n request.signal.removeEventListener('abort', abortXhr);\n }\n };\n }\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit);\n })\n }\n\n fetch.polyfill = true;\n\n if (!self.fetch) {\n self.fetch = fetch;\n self.Headers = Headers;\n self.Request = Request;\n self.Response = Response;\n }\n\n exports.Headers = Headers;\n exports.Request = Request;\n exports.Response = Response;\n exports.fetch = fetch;\n\n Object.defineProperty(exports, '__esModule', { value: true });\n\n return exports;\n\n})({});\n})(__self__);\n__self__.fetch.ponyfill = true;\n// Remove \"polyfill\" property added by whatwg-fetch\ndelete __self__.fetch.polyfill;\n// Choose between native implementation (global) or custom implementation (__self__)\n// var ctx = global.fetch ? global : __self__;\nvar ctx = __self__; // this line disable service worker support temporarily\nexports = ctx.fetch // To enable: import fetch from 'cross-fetch'\nexports.default = ctx.fetch // For TypeScript consumers without esModuleInterop.\nexports.fetch = ctx.fetch // To enable: import {fetch} from 'cross-fetch'\nexports.Headers = ctx.Headers\nexports.Request = ctx.Request\nexports.Response = ctx.Response\nmodule.exports = exports\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PolicyPendingError = exports.DfnsError = void 0;\nclass DfnsError extends Error {\n constructor(httpStatus, message, context) {\n super(message);\n this.httpStatus = httpStatus;\n this.context = context;\n this.name = 'DfnsError';\n }\n toString() {\n return JSON.stringify({\n httpStatus: this.httpStatus,\n message: this.message,\n ...(this.context && this.context),\n }, null, 2);\n }\n}\nexports.DfnsError = DfnsError;\nclass PolicyPendingError extends DfnsError {\n constructor(context) {\n super(PolicyPendingError.HTTP_ACCEPTED, 'Operation triggered a policy pending approval', context);\n }\n}\nexports.PolicyPendingError = PolicyPendingError;\nPolicyPendingError.HTTP_ACCEPTED = 202;\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nconst base64 = require('base64-js')\nconst ieee754 = require('ieee754')\nconst customInspectSymbol =\n (typeof Symbol === 'function' && typeof Symbol['for'] === 'function') // eslint-disable-line dot-notation\n ? Symbol['for']('nodejs.util.inspect.custom') // eslint-disable-line dot-notation\n : null\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\nconst K_MAX_LENGTH = 0x7fffffff\nexports.kMaxLength = K_MAX_LENGTH\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Print warning and recommend using `buffer` v4.x which has an Object\n * implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * We report that the browser does not support typed arrays if the are not subclassable\n * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`\n * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support\n * for __proto__ and has a buggy typed array implementation.\n */\nBuffer.TYPED_ARRAY_SUPPORT = typedArraySupport()\n\nif (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&\n typeof console.error === 'function') {\n console.error(\n 'This browser lacks typed array (Uint8Array) support which is required by ' +\n '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'\n )\n}\n\nfunction typedArraySupport () {\n // Can typed array instances can be augmented?\n try {\n const arr = new Uint8Array(1)\n const proto = { foo: function () { return 42 } }\n Object.setPrototypeOf(proto, Uint8Array.prototype)\n Object.setPrototypeOf(arr, proto)\n return arr.foo() === 42\n } catch (e) {\n return false\n }\n}\n\nObject.defineProperty(Buffer.prototype, 'parent', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.buffer\n }\n})\n\nObject.defineProperty(Buffer.prototype, 'offset', {\n enumerable: true,\n get: function () {\n if (!Buffer.isBuffer(this)) return undefined\n return this.byteOffset\n }\n})\n\nfunction createBuffer (length) {\n if (length > K_MAX_LENGTH) {\n throw new RangeError('The value \"' + length + '\" is invalid for option \"size\"')\n }\n // Return an augmented `Uint8Array` instance\n const buf = new Uint8Array(length)\n Object.setPrototypeOf(buf, Buffer.prototype)\n return buf\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new TypeError(\n 'The \"string\" argument must be of type string. Received type number'\n )\n }\n return allocUnsafe(arg)\n }\n return from(arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\nfunction from (value, encodingOrOffset, length) {\n if (typeof value === 'string') {\n return fromString(value, encodingOrOffset)\n }\n\n if (ArrayBuffer.isView(value)) {\n return fromArrayView(value)\n }\n\n if (value == null) {\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n }\n\n if (isInstance(value, ArrayBuffer) ||\n (value && isInstance(value.buffer, ArrayBuffer))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof SharedArrayBuffer !== 'undefined' &&\n (isInstance(value, SharedArrayBuffer) ||\n (value && isInstance(value.buffer, SharedArrayBuffer)))) {\n return fromArrayBuffer(value, encodingOrOffset, length)\n }\n\n if (typeof value === 'number') {\n throw new TypeError(\n 'The \"value\" argument must not be of type number. Received type number'\n )\n }\n\n const valueOf = value.valueOf && value.valueOf()\n if (valueOf != null && valueOf !== value) {\n return Buffer.from(valueOf, encodingOrOffset, length)\n }\n\n const b = fromObject(value)\n if (b) return b\n\n if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&\n typeof value[Symbol.toPrimitive] === 'function') {\n return Buffer.from(value[Symbol.toPrimitive]('string'), encodingOrOffset, length)\n }\n\n throw new TypeError(\n 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +\n 'or Array-like Object. Received type ' + (typeof value)\n )\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(value, encodingOrOffset, length)\n}\n\n// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:\n// https://github.com/feross/buffer/pull/148\nObject.setPrototypeOf(Buffer.prototype, Uint8Array.prototype)\nObject.setPrototypeOf(Buffer, Uint8Array)\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be of type number')\n } else if (size < 0) {\n throw new RangeError('The value \"' + size + '\" is invalid for option \"size\"')\n }\n}\n\nfunction alloc (size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpreted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(size).fill(fill, encoding)\n : createBuffer(size).fill(fill)\n }\n return createBuffer(size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(size, fill, encoding)\n}\n\nfunction allocUnsafe (size) {\n assertSize(size)\n return createBuffer(size < 0 ? 0 : checked(size) | 0)\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(size)\n}\n\nfunction fromString (string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n\n const length = byteLength(string, encoding) | 0\n let buf = createBuffer(length)\n\n const actual = buf.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n buf = buf.slice(0, actual)\n }\n\n return buf\n}\n\nfunction fromArrayLike (array) {\n const length = array.length < 0 ? 0 : checked(array.length) | 0\n const buf = createBuffer(length)\n for (let i = 0; i < length; i += 1) {\n buf[i] = array[i] & 255\n }\n return buf\n}\n\nfunction fromArrayView (arrayView) {\n if (isInstance(arrayView, Uint8Array)) {\n const copy = new Uint8Array(arrayView)\n return fromArrayBuffer(copy.buffer, copy.byteOffset, copy.byteLength)\n }\n return fromArrayLike(arrayView)\n}\n\nfunction fromArrayBuffer (array, byteOffset, length) {\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\"offset\" is outside of buffer bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\"length\" is outside of buffer bounds')\n }\n\n let buf\n if (byteOffset === undefined && length === undefined) {\n buf = new Uint8Array(array)\n } else if (length === undefined) {\n buf = new Uint8Array(array, byteOffset)\n } else {\n buf = new Uint8Array(array, byteOffset, length)\n }\n\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(buf, Buffer.prototype)\n\n return buf\n}\n\nfunction fromObject (obj) {\n if (Buffer.isBuffer(obj)) {\n const len = checked(obj.length) | 0\n const buf = createBuffer(len)\n\n if (buf.length === 0) {\n return buf\n }\n\n obj.copy(buf, 0, 0, len)\n return buf\n }\n\n if (obj.length !== undefined) {\n if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {\n return createBuffer(0)\n }\n return fromArrayLike(obj)\n }\n\n if (obj.type === 'Buffer' && Array.isArray(obj.data)) {\n return fromArrayLike(obj.data)\n }\n}\n\nfunction checked (length) {\n // Note: cannot use `length < K_MAX_LENGTH` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= K_MAX_LENGTH) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return b != null && b._isBuffer === true &&\n b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false\n}\n\nBuffer.compare = function compare (a, b) {\n if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)\n if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError(\n 'The \"buf1\", \"buf2\" arguments must be one of type Buffer or Uint8Array'\n )\n }\n\n if (a === b) return 0\n\n let x = a.length\n let y = b.length\n\n for (let i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!Array.isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n let i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n const buffer = Buffer.allocUnsafe(length)\n let pos = 0\n for (i = 0; i < list.length; ++i) {\n let buf = list[i]\n if (isInstance(buf, Uint8Array)) {\n if (pos + buf.length > buffer.length) {\n if (!Buffer.isBuffer(buf)) buf = Buffer.from(buf)\n buf.copy(buffer, pos)\n } else {\n Uint8Array.prototype.set.call(\n buffer,\n buf,\n pos\n )\n }\n } else if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n } else {\n buf.copy(buffer, pos)\n }\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n throw new TypeError(\n 'The \"string\" argument must be one of type string, Buffer, or ArrayBuffer. ' +\n 'Received type ' + typeof string\n )\n }\n\n const len = string.length\n const mustMatch = (arguments.length > 2 && arguments[2] === true)\n if (!mustMatch && len === 0) return 0\n\n // Use a for loop to avoid recursion\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) {\n return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8\n }\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n let loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coercion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)\n// to detect a Buffer instance. It's not possible to use `instanceof Buffer`\n// reliably in a browserify context because there could be multiple different\n// copies of the 'buffer' package in use. This method works even for Buffer\n// instances that were created from another copy of the `buffer` package.\n// See: https://github.com/feross/buffer/issues/154\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n const i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n const len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (let i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n const len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (let i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n const len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (let i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n const length = this.length\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.toLocaleString = Buffer.prototype.toString\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n let str = ''\n const max = exports.INSPECT_MAX_BYTES\n str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()\n if (this.length > max) str += ' ... '\n return '<Buffer ' + str + '>'\n}\nif (customInspectSymbol) {\n Buffer.prototype[customInspectSymbol] = Buffer.prototype.inspect\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (isInstance(target, Uint8Array)) {\n target = Buffer.from(target, target.offset, target.byteLength)\n }\n if (!Buffer.isBuffer(target)) {\n throw new TypeError(\n 'The \"target\" argument must be one of type Buffer or Uint8Array. ' +\n 'Received type ' + (typeof target)\n )\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n let x = thisEnd - thisStart\n let y = end - start\n const len = Math.min(x, y)\n\n const thisCopy = this.slice(thisStart, thisEnd)\n const targetCopy = target.slice(start, end)\n\n for (let i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (numberIsNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [val], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n let indexSize = 1\n let arrLength = arr.length\n let valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n let i\n if (dir) {\n let foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n let found = true\n for (let j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n const remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n const strLen = string.length\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n let i\n for (i = 0; i < length; ++i) {\n const parsed = parseInt(string.substr(i * 2, 2), 16)\n if (numberIsNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset >>> 0\n if (isFinite(length)) {\n length = length >>> 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n const remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n let loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n case 'latin1':\n case 'binary':\n return asciiWrite(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n const res = []\n\n let i = start\n while (i < end) {\n const firstByte = buf[i]\n let codePoint = null\n let bytesPerSequence = (firstByte > 0xEF)\n ? 4\n : (firstByte > 0xDF)\n ? 3\n : (firstByte > 0xBF)\n ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n let secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nconst MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n const len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n let res = ''\n let i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n let ret = ''\n end = Math.min(buf.length, end)\n\n for (let i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n const len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n let out = ''\n for (let i = start; i < end; ++i) {\n out += hexSliceLookupTable[buf[i]]\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n const bytes = buf.slice(start, end)\n let res = ''\n // If bytes.length is odd, the last 8 bits must be ignored (same as node.js)\n for (let i = 0; i < bytes.length - 1; i += 2) {\n res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n const len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n const newBuf = this.subarray(start, end)\n // Return an augmented `Uint8Array` instance\n Object.setPrototypeOf(newBuf, Buffer.prototype)\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUintLE =\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUintBE =\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n let val = this[offset + --byteLength]\n let mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUint8 =\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUint16LE =\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUint16BE =\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUint32LE =\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUint32BE =\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readBigUInt64LE = defineBigIntMethod(function readBigUInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const lo = first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24\n\n const hi = this[++offset] +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n last * 2 ** 24\n\n return BigInt(lo) + (BigInt(hi) << BigInt(32))\n})\n\nBuffer.prototype.readBigUInt64BE = defineBigIntMethod(function readBigUInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const hi = first * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n const lo = this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last\n\n return (BigInt(hi) << BigInt(32)) + BigInt(lo)\n})\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let val = this[offset]\n let mul = 1\n let i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n let i = byteLength\n let mul = 1\n let val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 2, this.length)\n const val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readBigInt64LE = defineBigIntMethod(function readBigInt64LE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = this[offset + 4] +\n this[offset + 5] * 2 ** 8 +\n this[offset + 6] * 2 ** 16 +\n (last << 24) // Overflow\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(first +\n this[++offset] * 2 ** 8 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 24)\n})\n\nBuffer.prototype.readBigInt64BE = defineBigIntMethod(function readBigInt64BE (offset) {\n offset = offset >>> 0\n validateNumber(offset, 'offset')\n const first = this[offset]\n const last = this[offset + 7]\n if (first === undefined || last === undefined) {\n boundsError(offset, this.length - 8)\n }\n\n const val = (first << 24) + // Overflow\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n this[++offset]\n\n return (BigInt(val) << BigInt(32)) +\n BigInt(this[++offset] * 2 ** 24 +\n this[++offset] * 2 ** 16 +\n this[++offset] * 2 ** 8 +\n last)\n})\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n offset = offset >>> 0\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUintLE =\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let mul = 1\n let i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUintBE =\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n byteLength = byteLength >>> 0\n if (!noAssert) {\n const maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n let i = byteLength - 1\n let mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUint8 =\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeUint16LE =\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeUint16BE =\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeUint32LE =\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeUint32BE =\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nfunction wrtBigUInt64LE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n lo = lo >> 8\n buf[offset++] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n hi = hi >> 8\n buf[offset++] = hi\n return offset\n}\n\nfunction wrtBigUInt64BE (buf, value, offset, min, max) {\n checkIntBI(value, min, max, buf, offset, 7)\n\n let lo = Number(value & BigInt(0xffffffff))\n buf[offset + 7] = lo\n lo = lo >> 8\n buf[offset + 6] = lo\n lo = lo >> 8\n buf[offset + 5] = lo\n lo = lo >> 8\n buf[offset + 4] = lo\n let hi = Number(value >> BigInt(32) & BigInt(0xffffffff))\n buf[offset + 3] = hi\n hi = hi >> 8\n buf[offset + 2] = hi\n hi = hi >> 8\n buf[offset + 1] = hi\n hi = hi >> 8\n buf[offset] = hi\n return offset + 8\n}\n\nBuffer.prototype.writeBigUInt64LE = defineBigIntMethod(function writeBigUInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeBigUInt64BE = defineBigIntMethod(function writeBigUInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, BigInt(0), BigInt('0xffffffffffffffff'))\n})\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = 0\n let mul = 1\n let sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n const limit = Math.pow(2, (8 * byteLength) - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n let i = byteLength - 1\n let mul = 1\n let sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n return offset + 4\n}\n\nBuffer.prototype.writeBigInt64LE = defineBigIntMethod(function writeBigInt64LE (value, offset = 0) {\n return wrtBigUInt64LE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nBuffer.prototype.writeBigInt64BE = defineBigIntMethod(function writeBigInt64BE (value, offset = 0) {\n return wrtBigUInt64BE(this, value, offset, -BigInt('0x8000000000000000'), BigInt('0x7fffffffffffffff'))\n})\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n value = +value\n offset = offset >>> 0\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('Index out of range')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n const len = end - start\n\n if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {\n // Use built-in when available, missing from IE11\n this.copyWithin(targetStart, start, end)\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, end),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n if (val.length === 1) {\n const code = val.charCodeAt(0)\n if ((encoding === 'utf8' && code < 128) ||\n encoding === 'latin1') {\n // Fast path: If `val` fits into a single byte, use that numeric value.\n val = code\n }\n }\n } else if (typeof val === 'number') {\n val = val & 255\n } else if (typeof val === 'boolean') {\n val = Number(val)\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n let i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n const bytes = Buffer.isBuffer(val)\n ? val\n : Buffer.from(val, encoding)\n const len = bytes.length\n if (len === 0) {\n throw new TypeError('The value \"' + val +\n '\" is invalid for argument \"value\"')\n }\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// CUSTOM ERRORS\n// =============\n\n// Simplified versions from Node, changed for Buffer-only usage\nconst errors = {}\nfunction E (sym, getMessage, Base) {\n errors[sym] = class NodeError extends Base {\n constructor () {\n super()\n\n Object.defineProperty(this, 'message', {\n value: getMessage.apply(this, arguments),\n writable: true,\n configurable: true\n })\n\n // Add the error code to the name to include it in the stack trace.\n this.name = `${this.name} [${sym}]`\n // Access the stack to generate the error message including the error code\n // from the name.\n this.stack // eslint-disable-line no-unused-expressions\n // Reset the name to the actual name.\n delete this.name\n }\n\n get code () {\n return sym\n }\n\n set code (value) {\n Object.defineProperty(this, 'code', {\n configurable: true,\n enumerable: true,\n value,\n writable: true\n })\n }\n\n toString () {\n return `${this.name} [${sym}]: ${this.message}`\n }\n }\n}\n\nE('ERR_BUFFER_OUT_OF_BOUNDS',\n function (name) {\n if (name) {\n return `${name} is outside of buffer bounds`\n }\n\n return 'Attempt to access memory outside buffer bounds'\n }, RangeError)\nE('ERR_INVALID_ARG_TYPE',\n function (name, actual) {\n return `The \"${name}\" argument must be of type number. Received type ${typeof actual}`\n }, TypeError)\nE('ERR_OUT_OF_RANGE',\n function (str, range, input) {\n let msg = `The value of \"${str}\" is out of range.`\n let received = input\n if (Number.isInteger(input) && Math.abs(input) > 2 ** 32) {\n received = addNumericalSeparator(String(input))\n } else if (typeof input === 'bigint') {\n received = String(input)\n if (input > BigInt(2) ** BigInt(32) || input < -(BigInt(2) ** BigInt(32))) {\n received = addNumericalSeparator(received)\n }\n received += 'n'\n }\n msg += ` It must be ${range}. Received ${received}`\n return msg\n }, RangeError)\n\nfunction addNumericalSeparator (val) {\n let res = ''\n let i = val.length\n const start = val[0] === '-' ? 1 : 0\n for (; i >= start + 4; i -= 3) {\n res = `_${val.slice(i - 3, i)}${res}`\n }\n return `${val.slice(0, i)}${res}`\n}\n\n// CHECK FUNCTIONS\n// ===============\n\nfunction checkBounds (buf, offset, byteLength) {\n validateNumber(offset, 'offset')\n if (buf[offset] === undefined || buf[offset + byteLength] === undefined) {\n boundsError(offset, buf.length - (byteLength + 1))\n }\n}\n\nfunction checkIntBI (value, min, max, buf, offset, byteLength) {\n if (value > max || value < min) {\n const n = typeof min === 'bigint' ? 'n' : ''\n let range\n if (byteLength > 3) {\n if (min === 0 || min === BigInt(0)) {\n range = `>= 0${n} and < 2${n} ** ${(byteLength + 1) * 8}${n}`\n } else {\n range = `>= -(2${n} ** ${(byteLength + 1) * 8 - 1}${n}) and < 2 ** ` +\n `${(byteLength + 1) * 8 - 1}${n}`\n }\n } else {\n range = `>= ${min}${n} and <= ${max}${n}`\n }\n throw new errors.ERR_OUT_OF_RANGE('value', range, value)\n }\n checkBounds(buf, offset, byteLength)\n}\n\nfunction validateNumber (value, name) {\n if (typeof value !== 'number') {\n throw new errors.ERR_INVALID_ARG_TYPE(name, 'number', value)\n }\n}\n\nfunction boundsError (value, length, type) {\n if (Math.floor(value) !== value) {\n validateNumber(value, type)\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset', 'an integer', value)\n }\n\n if (length < 0) {\n throw new errors.ERR_BUFFER_OUT_OF_BOUNDS()\n }\n\n throw new errors.ERR_OUT_OF_RANGE(type || 'offset',\n `>= ${type ? 1 : 0} and <= ${length}`,\n value)\n}\n\n// HELPER FUNCTIONS\n// ================\n\nconst INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node takes equal signs as end of the Base64 encoding\n str = str.split('=')[0]\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = str.trim().replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n let codePoint\n const length = string.length\n let leadSurrogate = null\n const bytes = []\n\n for (let i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n let c, hi, lo\n const byteArray = []\n for (let i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n let i\n for (i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\n// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass\n// the `instanceof` check but they should be treated as of that type.\n// See: https://github.com/feross/buffer/issues/166\nfunction isInstance (obj, type) {\n return obj instanceof type ||\n (obj != null && obj.constructor != null && obj.constructor.name != null &&\n obj.constructor.name === type.name)\n}\nfunction numberIsNaN (obj) {\n // For IE11 support\n return obj !== obj // eslint-disable-line no-self-compare\n}\n\n// Create lookup table for `toString('hex')`\n// See: https://github.com/feross/buffer/issues/219\nconst hexSliceLookupTable = (function () {\n const alphabet = '0123456789abcdef'\n const table = new Array(256)\n for (let i = 0; i < 16; ++i) {\n const i16 = i * 16\n for (let j = 0; j < 16; ++j) {\n table[i16 + j] = alphabet[i] + alphabet[j]\n }\n }\n return table\n})()\n\n// Return not function with Error if BigInt not supported\nfunction defineBigIntMethod (fn) {\n return typeof BigInt === 'undefined' ? BufferBigIntNotDefined : fn\n}\n\nfunction BufferBigIntNotDefined () {\n throw new Error('BigInt not supported')\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.fromBase64Url = exports.toBase64Url = exports.fromBase64 = exports.toBase64 = void 0;\nconst buffer_1 = require(\"buffer\");\nconst pad = (topad) => {\n const padLength = 4 - (topad.length % 4);\n if (padLength < 4) {\n topad += '='.repeat(padLength);\n }\n return topad;\n};\nconst toBase64 = (buffer) => {\n if (typeof buffer === 'string') {\n buffer = buffer_1.Buffer.from(buffer);\n }\n return buffer.toString('base64');\n};\nexports.toBase64 = toBase64;\nconst fromBase64 = (encoded) => {\n return buffer_1.Buffer.from(pad(encoded), 'base64');\n};\nexports.fromBase64 = fromBase64;\nconst toBase64Url = (buffer) => {\n return (0, exports.toBase64)(buffer).replace(/=/g, '').replace(/\\+/g, '-').replace(/\\//g, '_');\n};\nexports.toBase64Url = toBase64Url;\nconst fromBase64Url = (encoded) => {\n encoded = pad(encoded).replace(/\\-/g, '+').replace(/_/g, '/');\n return buffer_1.Buffer.from(encoded, 'base64');\n};\nexports.fromBase64Url = fromBase64Url;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assertAuthTokenIsSameOrg = exports.JWT_CUSTOM_DATA_CLAIM = void 0;\nconst base64_1 = require(\"./base64\");\nexports.JWT_CUSTOM_DATA_CLAIM = 'https://custom/app_metadata';\nconst assertAuthTokenIsSameOrg = ({ authToken, orgId }) => {\n const tokenBody = authToken.split('.')?.[1] || '';\n let decoded;\n try {\n decoded = JSON.parse((0, base64_1.fromBase64)(tokenBody).toString('utf-8'));\n }\n catch (error) {\n throw new Error('Provided auth token could not be properly parsed');\n }\n const tokenOrgId = decoded?.[exports.JWT_CUSTOM_DATA_CLAIM]?.['orgId'];\n if (tokenOrgId !== orgId) {\n throw new Error(`Provided auth token is not scoped to org ID ${orgId}`);\n }\n};\nexports.assertAuthTokenIsSameOrg = assertAuthTokenIsSameOrg;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.simpleFetch = exports.dfnsAuth = exports.catchPolicyPending = exports.errorHandler = exports.jsonSerializer = exports.fullUrl = void 0;\nconst cross_fetch_1 = require(\"cross-fetch\");\nconst dfnsError_1 = require(\"../dfnsError\");\nconst DEFAULT_DFNS_BASE_URL = 'https://api.dfns.io';\nconst package_json_1 = require(\"../package.json\");\nconst authToken_1 = require(\"./authToken\");\nconst fullUrl = (fetch) => {\n return async (resource, options) => {\n const baseUrl = options.apiOptions.baseUrl || DEFAULT_DFNS_BASE_URL;\n resource = new URL(resource, baseUrl);\n return fetch(resource, options);\n };\n};\nexports.fullUrl = fullUrl;\nconst jsonSerializer = (fetch) => {\n return async (resource, options) => {\n if (options.body) {\n options.body = JSON.stringify(options.body);\n options.headers = {\n 'content-type': 'application/json',\n ...(options.headers ?? {}),\n };\n }\n return fetch(resource, options);\n };\n};\nexports.jsonSerializer = jsonSerializer;\nconst errorHandler = (fetch) => {\n return async (resource, options) => {\n const response = await fetch(resource, options);\n if (response.ok) {\n return response;\n }\n else {\n const body = await response.json();\n const message = body?.error?.message ?? body?.message;\n throw new dfnsError_1.DfnsError(response.status, message, {\n url: response.url,\n headers: response.headers,\n body,\n });\n }\n };\n};\nexports.errorHandler = errorHandler;\n// raise a 202 response by policy execution as error\nconst catchPolicyPending = (fetch) => {\n return async (resource, options) => {\n const response = await fetch(resource, options);\n if (response.status === dfnsError_1.PolicyPendingError.HTTP_ACCEPTED) {\n throw new dfnsError_1.PolicyPendingError(await response.json());\n }\n else {\n return response;\n }\n };\n};\nexports.catchPolicyPending = catchPolicyPending;\nconst dfnsAuth = (fetch) => {\n return async (resource, options) => {\n const { orgId, authToken } = options.apiOptions;\n if (authToken && orgId) {\n (0, authToken_1.assertAuthTokenIsSameOrg)({ orgId, authToken });\n }\n const authorization = authToken\n ? {\n authorization: `Bearer ${authToken}`,\n }\n : {};\n options.headers = {\n 'x-dfns-sdk-version': package_json_1.version,\n ...authorization,\n ...(options.headers ?? {}),\n };\n return fetch(resource, options);\n };\n};\nexports.dfnsAuth = dfnsAuth;\nexports.simpleFetch = (0, exports.fullUrl)((0, exports.jsonSerializer)((0, exports.dfnsAuth)((0, exports.catchPolicyPending)((0, exports.errorHandler)(cross_fetch_1.fetch)))));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BaseAuthApi = void 0;\nconst fetch_1 = require(\"./utils/fetch\");\nclass BaseAuthApi {\n /**\n * Creates a user action challenge\n */\n static async createUserActionChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/action/init', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Sign a user action challenge\n */\n static async signUserActionChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/action', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Initiates user login, by creating a challenge that will need to be signed by the user Credentials.\n */\n static async createUserLoginChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/login/init', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes user login by sending the signed login challenge.\n */\n static async createUserLogin(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/login', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes user logout by sending the user auth token.\n */\n static async userLogout(options) {\n if (!options.authToken) {\n throw new Error('authToken is required');\n }\n const response = await (0, fetch_1.simpleFetch)('/auth/logout', {\n method: 'PUT',\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Initiates Registration by creating a challenge that will need to be signed by a new set of Credentials.\n */\n static async createUserRegistrationChallenge(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/registration/init', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes Registration by sending the signed registration challenge, containing the new Credential identity created.\n */\n static async createUserRegistration(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/registration', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n /**\n * Completes Recovery by sending the signed recovery challenge, containing the new Credential identity created.\n */\n async createUserRecovery(request, options) {\n const response = await (0, fetch_1.simpleFetch)('/auth/recover/user', {\n method: 'POST',\n body: request,\n apiOptions: options,\n });\n return response.json();\n }\n}\nexports.BaseAuthApi = BaseAuthApi;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.userActionFetch = void 0;\nconst cross_fetch_1 = require(\"cross-fetch\");\nconst fetch_1 = require(\"./fetch\");\nconst baseAuthApi_1 = require(\"../baseAuthApi\");\nconst dfnsError_1 = require(\"../dfnsError\");\nconst userAction = (fetch) => {\n return async (resource, options) => {\n if (options.method !== 'GET') {\n const apiOptions = {\n ...options.apiOptions,\n baseUrl: options.apiOptions.baseAuthUrl || options.apiOptions.baseUrl,\n };\n if (!apiOptions.signer) {\n throw new dfnsError_1.DfnsError(-1, 'A \"signer\" needs to be passed to Dfns client.', {\n detail: `Most non-readonly endpoints require \"User Action Signing\" flow.` +\n ` During that flow, the credential \"signer\" that you passed will handle signing` +\n ` the user action challenge, using your credential.`,\n });\n }\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionPayload: options.body ?? '',\n userActionHttpMethod: options.method,\n userActionHttpPath: resource.pathname,\n userActionServerKind: apiOptions?.userActionServerKind || 'Api',\n }, apiOptions);\n const assertion = await apiOptions.signer.sign(challenge);\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge({\n challengeIdentifier: challenge.challengeIdentifier,\n firstFactor: assertion,\n }, apiOptions);\n options.headers = {\n 'x-dfns-useraction': userAction,\n ...(options.headers ?? {}),\n };\n }\n return fetch(resource, options);\n };\n};\nexports.userActionFetch = (0, fetch_1.fullUrl)((0, fetch_1.jsonSerializer)((0, fetch_1.dfnsAuth)(userAction((0, fetch_1.catchPolicyPending)((0, fetch_1.errorHandler)(cross_fetch_1.fetch))))));\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.buildPathAndQuery = void 0;\nconst buildPathAndQuery = (pattern, params) => {\n let path = pattern;\n const paramsToReplace = (path.match(new RegExp(`:[a-zA-Z]+`, 'g')) || []).map((v) => v.replace(/^:/, ''));\n for (const key of paramsToReplace) {\n path = path.replace(new RegExp(`:${key}`, 'g'), encodeURIComponent(params.path[key]));\n }\n const query = Object.entries(params.query)\n .filter(([_, value]) => !!value)\n .map(([key, value]) => `${key}=${encodeURIComponent(value.toString())}`)\n .join('&');\n return query === '' ? path : `${path}?${query}`;\n};\nexports.buildPathAndQuery = buildPathAndQuery;\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AuthClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass AuthClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateCredential(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activatePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archivePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredential(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createCredential instead */\n async createUserCredential(request) {\n return this.createCredential(request);\n }\n async createCredentialChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createCredentialChallenge instead */\n async createUserCredentialChallenge(request) {\n return this.createCredentialChallenge(request);\n }\n async createCredentialChallengeWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/verify', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createDelegatedRecoveryChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/delegated', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createDelegatedRecoveryChallenge instead */\n async createDelegatedUserRecovery(request) {\n return this.createDelegatedRecoveryChallenge(request);\n }\n async createDelegatedRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/delegated', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createDelegatedRegistrationChallenge instead */\n async createDelegatedUserRegistration(request) {\n return this.createDelegatedRegistrationChallenge(request);\n }\n async createLoginChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRecoveryChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSocialRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUserActionChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createUserActionChallenge instead */\n async createUserActionSignatureChallenge(request) {\n return this.createUserActionChallenge(request);\n }\n async createUserActionSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateCredential(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivatePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegatedLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/delegated', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use delegatedLogin instead */\n async createDelegatedUserLogin(request) {\n return this.delegatedLogin(request);\n }\n async getApplication(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps/:appId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getAuditLog(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs/:id', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApplications() {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAuditLogs(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCredentials() {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use listCredentials instead */\n async listUserCredentials() {\n return this.listCredentials();\n }\n async listPersonalAccessTokens() {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listServiceAccounts() {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listUsers(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async login(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async logout(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/logout', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request?.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recover(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use recover instead */\n async createUserRecovery(request) {\n return this.recover(request);\n }\n async register(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use register instead */\n async createUserRegistration(request) {\n return this.register(request);\n }\n async registerEndUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/enduser', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async resendRegistrationCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendLoginCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendRecoveryCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async socialLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLoginInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.AuthClient = AuthClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedAuthClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedAuthClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateCredentialInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateCredentialComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activatePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activatePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archivePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archivePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archiveServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async archiveUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archiveUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createCredentialComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createCredentialChallenge instead */\n async createUserCredentialChallenge(request) {\n return this.createCredentialChallenge(request);\n }\n async createCredentialChallengeWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialCodeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createCredentialCodeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createCredentialWithCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/code/verify', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createDelegatedRecoveryChallengeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/delegated', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createDelegatedRecoveryChallengeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/delegated', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createDelegatedRegistrationChallengeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/delegated', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createDelegatedRegistrationChallengeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/delegated', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createLoginChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createPersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRecoveryChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSocialRegistrationChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createUserActionChallenge(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use createUserActionChallenge instead */\n async createUserActionSignatureChallenge(request) {\n return this.createUserActionChallenge(request);\n }\n async createUserActionSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateCredentialInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateCredentialComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivatePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivatePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegatedLoginInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/delegated', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async delegatedLoginComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/delegated', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getApplication(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps/:appId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getAuditLog(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs/:id', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPersonalAccessToken(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getServiceAccount(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApplications() {\n const path = (0, url_1.buildPathAndQuery)('/auth/apps', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAuditLogs(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/action/logs', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCredentials() {\n const path = (0, url_1.buildPathAndQuery)('/auth/credentials', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use listCredentials instead */\n async listUserCredentials() {\n return this.listCredentials();\n }\n async listPersonalAccessTokens() {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listServiceAccounts() {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listUsers(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async login(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async logout(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/logout', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request?.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recover(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use recover instead */\n async createUserRecovery(request) {\n return this.recover(request);\n }\n async register(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n /** @deprecated, use register instead */\n async createUserRegistration(request) {\n return this.register(request);\n }\n async registerEndUser(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/enduser', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async resendRegistrationCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/registration/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendLoginCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async sendRecoveryCode(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/recover/user/code', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async socialLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/social', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLogin(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async ssoLoginInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/login/sso/init', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePersonalAccessTokenInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updatePersonalAccessTokenComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/pats/:tokenId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateServiceAccountInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateServiceAccountComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/service-accounts/:serviceAccountId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateUserInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateUserComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/auth/users/:userId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedAuthClient = DelegatedAuthClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ExchangesClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass ExchangesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createDeposit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/deposits', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWithdrawal(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/withdrawals', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccountAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccounts(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssetWithdrawalNetworks(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets/:asset/withdrawal-networks', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listExchanges(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.ExchangesClient = ExchangesClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedExchangesClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedExchangesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createDepositInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/deposits', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createDepositComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/deposits', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createExchangeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createExchangeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWithdrawalInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/withdrawals', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createWithdrawalComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/withdrawals', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteExchangeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteExchangeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getExchange(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccountAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAccounts(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssetWithdrawalNetworks(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges/:exchangeId/accounts/:accountId/assets/:asset/withdrawal-networks', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listExchanges(request) {\n const path = (0, url_1.buildPathAndQuery)('/exchanges', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedExchangesClient = DelegatedExchangesClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.FeeSponsorsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass FeeSponsorsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listFeeSponsors(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSponsoredFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/fees', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.FeeSponsorsClient = FeeSponsorsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedFeeSponsorsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedFeeSponsorsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async activateFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deactivateFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deactivateFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/deactivate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteFeeSponsorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteFeeSponsorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFeeSponsor(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listFeeSponsors(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSponsoredFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/fee-sponsors/:feeSponsorId/fees', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedFeeSponsorsClient = DelegatedFeeSponsorsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.KeysClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass KeysClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/delegate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deriveKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/derive', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/export', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/import', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listKeys(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.KeysClient = KeysClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedKeysClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedKeysClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/delegate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async delegateKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/delegate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deriveKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/derive', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deriveKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/derive', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/export', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async exportKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/export', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignatureInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async generateSignatureComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getKey(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/import', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async importKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/import', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listKeys(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateKeyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateKeyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/keys/:keyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedKeysClient = DelegatedKeysClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.NetworksClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass NetworksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/fees', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCantonValidators(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async readContract(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/read-contract', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.NetworksClient = NetworksClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedNetworksClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedNetworksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createCantonValidatorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createCantonValidatorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteCantonValidatorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteCantonValidatorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getCantonValidator(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getFees(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/fees', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listCantonValidators(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async readContract(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/read-contract', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateCantonValidatorInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateCantonValidatorComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/networks/:network/validators/:validatorId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedNetworksClient = DelegatedNetworksClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PermissionsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass PermissionsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/archive', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createAssignment(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteAssignment(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments/:assignmentId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n }\n async getPermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssignments(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPermissions(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.PermissionsClient = PermissionsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedPermissionsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedPermissionsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePermissionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/archive', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archivePermissionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/archive', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createAssignmentInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createAssignmentComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPermissionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createPermissionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteAssignmentInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments/:assignmentId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteAssignmentComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments/:assignmentId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n }\n async getPermission(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAssignments(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId/assignments', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPermissions(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePermissionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updatePermissionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/permissions/:permissionId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedPermissionsClient = DelegatedPermissionsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PoliciesClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass PoliciesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createApprovalDecision(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId/decisions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getApproval(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApprovals(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPolicies(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.PoliciesClient = PoliciesClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedPoliciesClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedPoliciesClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async archivePolicyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async archivePolicyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createApprovalDecisionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId/decisions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createApprovalDecisionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId/decisions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createPolicyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createPolicyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getApproval(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals/:approvalId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getPolicy(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listApprovals(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policy-approvals', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listPolicies(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updatePolicyInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updatePolicyComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/v2/policies/:policyId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedPoliciesClient = DelegatedPoliciesClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SignersClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass SignersClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async listKeyStores() {\n const path = (0, url_1.buildPathAndQuery)('/key-stores', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSigners() {\n const path = (0, url_1.buildPathAndQuery)('/signers', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.SignersClient = SignersClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedSignersClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedSignersClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async listKeyStores() {\n const path = (0, url_1.buildPathAndQuery)('/key-stores', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSigners() {\n const path = (0, url_1.buildPathAndQuery)('/signers', {\n path: {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedSignersClient = DelegatedSignersClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.StakingClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass StakingClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createStake(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createStakeAction(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakeRewards(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/rewards', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakeActions(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.StakingClient = StakingClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedStakingClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedStakingClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createStakeInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createStakeComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createStakeActionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createStakeActionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakeRewards(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/rewards', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakeActions(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes/:stakeId/actions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listStakes(request) {\n const path = (0, url_1.buildPathAndQuery)('/staking/stakes', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedStakingClient = DelegatedStakingClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WalletsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass WalletsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async acceptOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/accept', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/activate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async broadcastTransaction(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/delegate', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/export', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransaction(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions/:transactionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransfer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers/:transferId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/history', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletNfts(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/nfts', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/import', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOffers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOrgWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/all/history', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransactions(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransfers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWallets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async rejectOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/reject', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async tagWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async transferAsset(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async untagWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.WalletsClient = WalletsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedWalletsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedWalletsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async acceptOfferInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/accept', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async acceptOfferComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/accept', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async activateWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/activate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async activateWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/activate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async broadcastTransactionInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async broadcastTransactionComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async delegateWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/delegate', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async delegateWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/delegate', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async exportWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/export', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async exportWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/export', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async generateSignatureInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async generateSignatureComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getOffer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSignature(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures/:signatureId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransaction(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions/:transactionId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getTransfer(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers/:transferId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWallet(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletAssets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/assets', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/history', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWalletNfts(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/nfts', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async importWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/import', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async importWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/import', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOffers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listOrgWalletHistory(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/all/history', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSignatures(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/signatures', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransactions(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transactions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listTransfers(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWallets(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async rejectOfferInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/reject', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async rejectOfferComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/offers/:offerId/reject', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async tagWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async tagWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async transferAssetInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async transferAssetComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/transfers', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async untagWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async untagWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId/tags', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWalletInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateWalletComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/wallets/:walletId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedWalletsClient = DelegatedWalletsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WebhooksClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass WebhooksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'DELETE',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhookEvent(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events/:webhookEventId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhookEvents(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhooks(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async pingWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/ping', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'PUT',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.WebhooksClient = WebhooksClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedWebhooksClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedWebhooksClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async deleteWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'DELETE',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async deleteWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'DELETE',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhook(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getWebhookEvent(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events/:webhookEventId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhookEvents(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/events', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listWebhooks(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async pingWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/ping', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async pingWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId/ping', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async updateWebhookInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'PUT',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async updateWebhookComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/webhooks/:webhookId', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'PUT',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedWebhooksClient = DelegatedWebhooksClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SwapsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass SwapsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createSwap(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwap(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/:swapId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes/:quoteId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSwaps(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.SwapsClient = SwapsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedSwapsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedSwapsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createSwapInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify(request.body),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async createSwapComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwap(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/:swapId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getSwapQuote(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps/quotes/:quoteId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listSwaps(request) {\n const path = (0, url_1.buildPathAndQuery)('/swaps', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedSwapsClient = DelegatedSwapsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AgreementsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass AgreementsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async getLatestUnacceptedAgreement(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/latest-unaccepted', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recordAgreementAcceptance(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/:agreementId/accept', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: {},\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.AgreementsClient = AgreementsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DelegatedAgreementsClient = void 0;\nconst baseAuthApi_1 = require(\"../../baseAuthApi\");\nconst fetch_1 = require(\"../../utils/fetch\");\nconst url_1 = require(\"../../utils/url\");\nclass DelegatedAgreementsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async getLatestUnacceptedAgreement(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/latest-unaccepted', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async recordAgreementAcceptanceInit(request) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/:agreementId/accept', {\n path: request ?? {},\n query: {},\n });\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserActionChallenge({\n userActionHttpMethod: 'POST',\n userActionHttpPath: path,\n userActionPayload: JSON.stringify({}),\n userActionServerKind: 'Api',\n }, this.apiOptions);\n return challenge;\n }\n async recordAgreementAcceptanceComplete(request, signedChallenge) {\n const path = (0, url_1.buildPathAndQuery)('/agreements/:agreementId/accept', {\n path: request ?? {},\n query: {},\n });\n const { userAction } = await baseAuthApi_1.BaseAuthApi.signUserActionChallenge(signedChallenge, this.apiOptions);\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'POST',\n body: {},\n headers: { 'x-dfns-useraction': userAction },\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.DelegatedAgreementsClient = DelegatedAgreementsClient;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./types\"), exports);\n__exportStar(require(\"./client\"), exports);\n__exportStar(require(\"./delegatedClient\"), exports);\n","\"use strict\";\n/* eslint @typescript-eslint/no-unused-vars: 0 */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.AllocationsClient = void 0;\nconst fetch_1 = require(\"../../utils/fetch\");\nconst userActionFetch_1 = require(\"../../utils/userActionFetch\");\nconst url_1 = require(\"../../utils/url\");\nclass AllocationsClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async createAllocation(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async createAllocationAction(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations/:allocationId/actions', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, userActionFetch_1.userActionFetch)(path, {\n method: 'POST',\n body: request.body,\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async getAllocation(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations/:allocationId', {\n path: request ?? {},\n query: {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAllocationActions(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations/:allocationId/actions', {\n path: request ?? {},\n query: request.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n async listAllocations(request) {\n const path = (0, url_1.buildPathAndQuery)('/allocations', {\n path: request ?? {},\n query: request?.query ?? {},\n });\n const response = await (0, fetch_1.simpleFetch)(path, {\n method: 'GET',\n apiOptions: this.apiOptions,\n });\n return response.json();\n }\n}\nexports.AllocationsClient = AllocationsClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DfnsApiClient = void 0;\nconst auth_1 = require(\"./generated/auth\");\nconst exchanges_1 = require(\"./generated/exchanges\");\nconst feeSponsors_1 = require(\"./generated/feeSponsors\");\nconst keys_1 = require(\"./generated/keys\");\nconst networks_1 = require(\"./generated/networks\");\nconst permissions_1 = require(\"./generated/permissions\");\nconst policies_1 = require(\"./generated/policies\");\nconst signers_1 = require(\"./generated/signers\");\nconst staking_1 = require(\"./generated/staking\");\nconst wallets_1 = require(\"./generated/wallets\");\nconst webhooks_1 = require(\"./generated/webhooks\");\nconst swaps_1 = require(\"./generated/swaps\");\nconst agreements_1 = require(\"./generated/agreements\");\nconst client_1 = require(\"./generated/allocations/client\");\nclass DfnsApiClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n get auth() {\n return new auth_1.AuthClient(this.apiOptions);\n }\n get exchanges() {\n return new exchanges_1.ExchangesClient(this.apiOptions);\n }\n get feeSponsors() {\n return new feeSponsors_1.FeeSponsorsClient(this.apiOptions);\n }\n get keys() {\n return new keys_1.KeysClient(this.apiOptions);\n }\n get networks() {\n return new networks_1.NetworksClient(this.apiOptions);\n }\n get permissions() {\n return new permissions_1.PermissionsClient(this.apiOptions);\n }\n get policies() {\n return new policies_1.PoliciesClient(this.apiOptions);\n }\n get staking() {\n return new staking_1.StakingClient(this.apiOptions);\n }\n get allocations() {\n return new client_1.AllocationsClient(this.apiOptions);\n }\n get swaps() {\n return new swaps_1.SwapsClient(this.apiOptions);\n }\n get agreements() {\n return new agreements_1.AgreementsClient(this.apiOptions);\n }\n get signers() {\n return new signers_1.SignersClient(this.apiOptions);\n }\n get wallets() {\n return new wallets_1.WalletsClient(this.apiOptions);\n }\n get webhooks() {\n return new webhooks_1.WebhooksClient(this.apiOptions);\n }\n}\nexports.DfnsApiClient = DfnsApiClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DfnsAuthenticator = void 0;\nconst baseAuthApi_1 = require(\"./baseAuthApi\");\nclass DfnsAuthenticator {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n async login(request) {\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserLoginChallenge(request, this.apiOptions);\n const assertion = await this.apiOptions.signer.sign(challenge);\n return baseAuthApi_1.BaseAuthApi.createUserLogin({\n challengeIdentifier: challenge.challengeIdentifier,\n firstFactor: assertion,\n }, this.apiOptions);\n }\n async register(request) {\n if (!this.apiOptions.signer.create) {\n throw new Error(`Provided signer does not implement 'create'`);\n }\n const challenge = await baseAuthApi_1.BaseAuthApi.createUserRegistrationChallenge(request, this.apiOptions);\n const attestation = await this.apiOptions.signer.create(challenge);\n return baseAuthApi_1.BaseAuthApi.createUserRegistration({ firstFactorCredential: attestation }, {\n ...this.apiOptions,\n authToken: challenge.temporaryAuthenticationToken,\n });\n }\n}\nexports.DfnsAuthenticator = DfnsAuthenticator;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DfnsDelegatedApiClient = void 0;\nconst auth_1 = require(\"./generated/auth\");\nconst exchanges_1 = require(\"./generated/exchanges\");\nconst feeSponsors_1 = require(\"./generated/feeSponsors\");\nconst keys_1 = require(\"./generated/keys\");\nconst networks_1 = require(\"./generated/networks\");\nconst permissions_1 = require(\"./generated/permissions\");\nconst policies_1 = require(\"./generated/policies\");\nconst signers_1 = require(\"./generated/signers\");\nconst wallets_1 = require(\"./generated/wallets\");\nconst webhooks_1 = require(\"./generated/webhooks\");\nclass DfnsDelegatedApiClient {\n constructor(apiOptions) {\n this.apiOptions = apiOptions;\n }\n get auth() {\n return new auth_1.DelegatedAuthClient(this.apiOptions);\n }\n get exchanges() {\n return new exchanges_1.DelegatedExchangesClient(this.apiOptions);\n }\n get feeSponsors() {\n return new feeSponsors_1.DelegatedFeeSponsorsClient(this.apiOptions);\n }\n get keys() {\n return new keys_1.DelegatedKeysClient(this.apiOptions);\n }\n get networks() {\n return new networks_1.DelegatedNetworksClient(this.apiOptions);\n }\n get permissions() {\n return new permissions_1.DelegatedPermissionsClient(this.apiOptions);\n }\n get policies() {\n return new policies_1.DelegatedPoliciesClient(this.apiOptions);\n }\n get wallets() {\n return new wallets_1.DelegatedWalletsClient(this.apiOptions);\n }\n get webhooks() {\n return new webhooks_1.DelegatedWebhooksClient(this.apiOptions);\n }\n get signers() {\n return new signers_1.DelegatedSignersClient(this.apiOptions);\n }\n}\nexports.DfnsDelegatedApiClient = DfnsDelegatedApiClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./baseAuthApi\"), exports);\n__exportStar(require(\"./dfnsApiClient\"), exports);\n__exportStar(require(\"./dfnsAuthenticator\"), exports);\n__exportStar(require(\"./dfnsDelegatedApiClient\"), exports);\n__exportStar(require(\"./dfnsError\"), exports);\n__exportStar(require(\"./signer\"), exports);\n__exportStar(require(\"./store\"), exports);\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.minimizeBigInt = void 0;\nconst minimizeBigInt = (value) => {\n const minValue = [0, ...value];\n for (let i = 0; i < minValue.length; ++i) {\n if (minValue[i] === 0) {\n continue;\n }\n if (minValue[i] > 0x7f) {\n return new Uint8Array(minValue.slice(i - 1));\n }\n return new Uint8Array(minValue.slice(i));\n }\n return new Uint8Array([0]);\n};\nexports.minimizeBigInt = minimizeBigInt;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toHex = exports.splitString = void 0;\nconst splitString = (text, maxLineLength = 64) => {\n const regex = new RegExp(`(.{1,${maxLineLength}})`, 'g');\n const matches = text.matchAll(regex);\n const lines = [];\n for (const match of matches) {\n lines.push(match[1]);\n }\n return lines;\n};\nexports.splitString = splitString;\nconst toHex = (buffer) => {\n const view = new Uint8Array(buffer);\n let hexString = \"\";\n for (const byte of view) {\n const hexByte = byte.toString(16);\n hexString += hexByte.padStart(2, \"0\");\n }\n return hexString.toLowerCase();\n};\nexports.toHex = toHex;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.rawSignatureToAns1 = exports.exportPublicKeyInPemFormatBrowser = void 0;\nconst buffer_1 = require(\"buffer\");\nconst base64_1 = require(\"./base64\");\nconst string_1 = require(\"./string\");\nconst bigint_1 = require(\"./bigint\");\n// Using crypto.subtle in order to run this in the browser\n// Adding `Browser` in the function name to distinguish with native node crypto module usage\nconst exportPublicKeyInPemFormatBrowser = async (key) => {\n const exported = await crypto.subtle.exportKey('spki', key.publicKey);\n const b64Exported = (0, base64_1.toBase64)(buffer_1.Buffer.from(exported));\n const pem = `-----BEGIN PUBLIC KEY-----\\n${(0, string_1.splitString)(b64Exported).join(\"\\n\")}\\n-----END PUBLIC KEY-----`;\n return pem;\n};\nexports.exportPublicKeyInPemFormatBrowser = exportPublicKeyInPemFormatBrowser;\nconst rawSignatureToAns1 = (rawSignature) => {\n const r = rawSignature.slice(0, 32);\n const s = rawSignature.slice(32);\n const minR = (0, bigint_1.minimizeBigInt)(r);\n const minS = (0, bigint_1.minimizeBigInt)(s);\n return new Uint8Array([\n 0x30,\n minR.length + minS.length + 4,\n 0x02,\n minR.length,\n ...minR,\n 0x02,\n minS.length,\n ...minS\n ]);\n};\nexports.rawSignatureToAns1 = rawSignatureToAns1;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.generateRandom = void 0;\n__exportStar(require(\"./base64\"), exports);\n__exportStar(require(\"./bigint\"), exports);\n__exportStar(require(\"./crypto\"), exports);\n__exportStar(require(\"./fetch\"), exports);\n__exportStar(require(\"./string\"), exports);\n__exportStar(require(\"./url\"), exports);\nconst generateRandom = (size) => {\n const buffer = new Uint8Array(size);\n for (let i = 0; i < size; i++) {\n buffer[i] = Math.floor(Math.random() * 256);\n }\n return buffer;\n};\nexports.generateRandom = generateRandom;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BrowserKeySigner = void 0;\nconst sdk_1 = require(\"@dfns/sdk\");\nconst utils_1 = require(\"@dfns/sdk/utils\");\nconst buffer_1 = require(\"buffer\");\nclass BrowserKeySigner {\n constructor(options) {\n this.options = options;\n }\n async create(challenge) {\n let credId = this.options.credId;\n if (credId === undefined || credId === '') {\n credId = (0, utils_1.toBase64Url)(buffer_1.Buffer.from((0, utils_1.generateRandom)(32)));\n this.options.credId = credId;\n }\n const publicKeyPem = await (0, utils_1.exportPublicKeyInPemFormatBrowser)(this.options.keyPair);\n const clientData = JSON.stringify({\n type: 'key.create',\n challenge: challenge.challenge,\n });\n const clientDataHash = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(clientData));\n const clientDataHashHex = (0, utils_1.toHex)(clientDataHash);\n const credInfoFingerprint = JSON.stringify({\n clientDataHash: clientDataHashHex,\n publicKey: publicKeyPem,\n });\n let rawSignature;\n const algorithm = this.options.keyPair.privateKey.algorithm.name;\n if (algorithm == 'ECDSA') {\n rawSignature = await crypto.subtle.sign({ name: 'ECDSA', hash: { name: 'SHA-256' } }, this.options.keyPair.privateKey, new TextEncoder().encode(credInfoFingerprint));\n }\n else {\n throw new sdk_1.DfnsError(-1, `${algorithm} is not supported`);\n }\n const signature = (0, utils_1.rawSignatureToAns1)(new Uint8Array(rawSignature));\n const attestationData = JSON.stringify({\n publicKey: publicKeyPem,\n signature: (0, utils_1.toHex)(signature.buffer),\n });\n return {\n credentialKind: 'Key',\n credentialInfo: {\n credId,\n clientData: (0, utils_1.toBase64Url)(clientData),\n attestationData: (0, utils_1.toBase64Url)(attestationData),\n },\n };\n }\n async sign(challenge) {\n const credId = this.options.credId;\n if (credId === undefined || credId === '') {\n throw new sdk_1.DfnsError(-1, 'credId is needed to sign');\n }\n const allowedCredId = challenge.allowCredentials.key.map((cred) => cred.id);\n if (!allowedCredId.includes(credId)) {\n throw new sdk_1.DfnsError(-1, `${credId} does not match allowed credentials: ${allowedCredId}`);\n }\n const clientData = JSON.stringify({\n type: 'key.get',\n challenge: challenge.challenge,\n });\n let rawSignature;\n const algorithm = this.options.keyPair.privateKey.algorithm.name;\n if (algorithm == 'ECDSA') {\n rawSignature = await crypto.subtle.sign({ name: 'ECDSA', hash: { name: 'SHA-256' } }, this.options.keyPair.privateKey, new TextEncoder().encode(clientData));\n }\n else {\n throw new sdk_1.DfnsError(-1, `${algorithm} is not supported`);\n }\n const signature = (0, utils_1.rawSignatureToAns1)(new Uint8Array(rawSignature));\n return {\n kind: 'Key',\n credentialAssertion: {\n credId: this.options.credId ?? '',\n clientData: (0, utils_1.toBase64Url)(clientData),\n signature: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(signature)),\n },\n };\n }\n}\nexports.BrowserKeySigner = BrowserKeySigner;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WebAuthnSigner = exports.DEFAULT_WAIT_TIMEOUT = void 0;\nconst sdk_1 = require(\"@dfns/sdk\");\nconst utils_1 = require(\"@dfns/sdk/utils\");\nconst buffer_1 = require(\"buffer\");\nexports.DEFAULT_WAIT_TIMEOUT = 60000;\nclass WebAuthnSigner {\n constructor(conf) {\n this.conf = conf;\n if (!this.conf?.relyingParty?.id || !this.conf?.relyingParty?.name) {\n throw new sdk_1.DfnsError(-1, `Relying party ID and name must be specified in the WebauthnSigner initializer`);\n }\n }\n async sign(challenge) {\n const response = await navigator.credentials.get({\n publicKey: {\n challenge: buffer_1.Buffer.from(challenge.challenge),\n allowCredentials: challenge.allowCredentials.webauthn.map(({ id, type }) => ({\n id: (0, utils_1.fromBase64Url)(id).buffer,\n type,\n })),\n rpId: this.conf.relyingParty.id,\n userVerification: challenge.userVerification,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n },\n });\n if (response === null) {\n throw new sdk_1.DfnsError(-1, 'Failed to sign with WebAuthn credential');\n }\n const credential = response;\n const assertion = credential.response;\n return {\n kind: 'Fido2',\n credentialAssertion: {\n credId: credential.id,\n clientData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.clientDataJSON)),\n authenticatorData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.authenticatorData)),\n signature: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.signature)),\n userHandle: assertion.userHandle ? (0, utils_1.toBase64Url)(buffer_1.Buffer.from(assertion.userHandle)) : undefined,\n },\n };\n }\n async create(challenge) {\n const options = {\n publicKey: {\n challenge: buffer_1.Buffer.from(challenge.challenge),\n pubKeyCredParams: challenge.pubKeyCredParams,\n rp: this.conf.relyingParty,\n user: {\n displayName: challenge.user.displayName,\n id: buffer_1.Buffer.from(challenge.user.id),\n name: challenge.user.name,\n },\n attestation: challenge.attestation,\n excludeCredentials: challenge.excludeCredentials.map(({ id, type }) => ({\n id: (0, utils_1.fromBase64Url)(id).buffer,\n type,\n })),\n authenticatorSelection: challenge.authenticatorSelection,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n },\n };\n const response = await navigator.credentials.create(options);\n if (response === null) {\n throw new sdk_1.DfnsError(-1, `Failed to create and sign with WebAuthn credential`);\n }\n const credential = response;\n const attestation = credential.response;\n return {\n credentialKind: 'Fido2',\n credentialInfo: {\n credId: credential.id,\n attestationData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(attestation.attestationObject)),\n clientData: (0, utils_1.toBase64Url)(buffer_1.Buffer.from(attestation.clientDataJSON)),\n },\n };\n }\n}\nexports.WebAuthnSigner = WebAuthnSigner;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WebAuthnSigner = exports.BrowserKeySigner = void 0;\nvar key_1 = require(\"./signers/key\");\nObject.defineProperty(exports, \"BrowserKeySigner\", { enumerable: true, get: function () { return key_1.BrowserKeySigner; } });\nvar webauthn_1 = require(\"./signers/webauthn\");\nObject.defineProperty(exports, \"WebAuthnSigner\", { enumerable: true, get: function () { return webauthn_1.WebAuthnSigner; } });\n","export const UnknownError = {\n error: 'Unknown error',\n message: 'An unknown error occurred'\n};\nexport const NotSupportedError = {\n error: 'NotSupported',\n message: 'Passkeys are not supported on this device. iOS 15 or Android SDK 28 and above is required to use Passkeys'\n};\nexport const RequestFailedError = {\n error: 'RequestFailed',\n message: 'The request failed. No Credentials were returned.'\n};\nexport const UserCancelledError = {\n error: 'UserCancelled',\n message: 'The user cancelled the request.'\n};\nexport const InvalidChallengeError = {\n error: 'InvalidChallenge',\n message: 'The provided challenge was invalid'\n};\nexport const InvalidUserIdError = {\n error: 'InvalidUserId',\n message: 'The provided userId was invalid'\n};\nexport const BadConfiguration = {\n error: 'BadConfiguration',\n message: 'Your app is not properly configured. Refer to the docs for help.'\n};\nexport const NoCredentialsError = {\n error: 'NoCredentials',\n message: 'No viable credential is available for the user.'\n};\nexport const InterruptedError = {\n error: 'Interrupted',\n message: 'The operation was interrupted and may be retried.'\n};\nexport const TimeoutError = {\n error: 'TimedOut',\n message: 'The operation timed out.'\n};\nexport const NativeError = (message = 'An unknown error occurred') => {\n return {\n error: 'Native error',\n message: message\n };\n};\nexport function handleNativeError(_error) {\n if (typeof _error !== 'object') {\n return UnknownError;\n }\n const error = String(_error).split(' ')[1];\n switch (error) {\n case 'NotSupported':\n {\n return NotSupportedError;\n }\n case 'RequestFailed':\n {\n return RequestFailedError;\n }\n case 'UserCancelled':\n {\n return UserCancelledError;\n }\n case 'InvalidChallenge':\n {\n return InvalidChallengeError;\n }\n case 'BadConfiguration':\n {\n return BadConfiguration;\n }\n case 'Interrupted':\n {\n return InterruptedError;\n }\n case 'NoCredentials':\n {\n return NoCredentialsError;\n }\n case 'TimedOut':\n {\n return TimeoutError;\n }\n case 'UnknownError':\n {\n return UnknownError;\n }\n default:\n {\n return NativeError(String(_error));\n }\n }\n}\n//# sourceMappingURL=PasskeyError.js.map","import { NativeModules, Platform } from 'react-native';\nconst LINKING_ERROR = \"The package 'react-native-passkey' doesn't seem to be linked. Make sure: \\n\\n\" + Platform.select({\n ios: \"- You have run 'pod install'\\n\",\n default: ''\n}) + '- You rebuilt the app after installing the package\\n' + '- You are not using Expo managed workflow\\n';\nexport const NativePasskey = NativeModules.Passkey ? NativeModules.Passkey : new Proxy({}, {\n get() {\n throw new Error(LINKING_ERROR);\n }\n});\n//# sourceMappingURL=NativePasskey.js.map","import { handleNativeError, NotSupportedError } from './PasskeyError';\nimport { Platform } from 'react-native';\nimport { NativePasskey } from './NativePasskey';\nexport class Passkey {\n /**\n * Creates a new Passkey\n *\n * @param request The FIDO2 Attestation Request in JSON format\n * @param options An object containing options for the registration process\n * @returns The FIDO2 Attestation Result in JSON format\n * @throws\n */\n static async create(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.create(JSON.stringify(request), false,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Creates a new Passkey\n * Forces the usage of a platform authenticator on iOS\n *\n * @param request The FIDO2 Attestation Request in JSON format\n * @param options An object containing options for the registration process\n * @returns The FIDO2 Attestation Result in JSON format\n * @throws\n */\n static async createPlatformKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.create(JSON.stringify(request), true,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Creates a new Passkey\n * Forces the usage of a security authenticator on iOS\n *\n * @param request The FIDO2 Attestation Request in JSON format\n * @param options An object containing options for the registration process\n * @returns The FIDO2 Attestation Result in JSON format\n * @throws\n */\n static async createSecurityKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.create(JSON.stringify(request), false,\n // forcePlatformKey\n true // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Authenticates using an existing Passkey\n *\n * @param request The FIDO2 Assertion Request in JSON format\n * @param options An object containing options for the authentication process\n * @returns The FIDO2 Assertion Result in JSON format\n * @throws\n */\n static async get(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.get(JSON.stringify(request), false,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Authenticates using an existing Passkey\n * Forces the usage of a platform authenticator on iOS\n *\n * @param request The FIDO2 Assertion Request in JSON format\n * @param options An object containing options for the authentication process\n * @returns The FIDO2 Assertion Result in JSON format\n * @throws\n */\n static async getPlatformKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.get(JSON.stringify(request), true,\n // forcePlatformKey\n false // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Authenticates using an existing Passkey\n * Forces the usage of a security authenticator on iOS\n *\n * @param request The FIDO2 Assertion Request in JSON format\n * @param options An object containing options for the authentication process\n * @returns The FIDO2 Assertion Result in JSON format\n * @throws\n */\n static async getSecurityKey(request) {\n if (!Passkey.isSupported()) {\n throw NotSupportedError;\n }\n try {\n const response = await NativePasskey.get(JSON.stringify(request), false,\n // forcePlatformKey\n true // forceSecurityKey\n );\n if (typeof response === 'string') {\n return JSON.parse(response);\n }\n return response;\n } catch (error) {\n throw handleNativeError(error);\n }\n }\n\n /**\n * Checks if Passkeys are supported on the current device\n *\n * @returns A boolean indicating whether Passkeys are supported\n */\n static isSupported() {\n if (Platform.OS === 'android') {\n return Platform.Version > 28;\n }\n if (Platform.OS === 'ios') {\n return parseInt(Platform.Version, 10) >= 15;\n }\n return false;\n }\n}\n//# sourceMappingURL=Passkey.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PasskeysSigner = exports.DEFAULT_WAIT_TIMEOUT = void 0;\nconst sdk_1 = require(\"@dfns/sdk\");\nconst utils_1 = require(\"@dfns/sdk/utils\");\nconst react_native_1 = require(\"react-native\");\nconst react_native_passkey_1 = require(\"react-native-passkey\");\nexports.DEFAULT_WAIT_TIMEOUT = 60000;\nclass AndroidPasskeys {\n constructor(conf) {\n this.conf = conf;\n if (!this.conf?.relyingParty?.id || !this.conf?.relyingParty?.name) {\n throw new sdk_1.DfnsError(-1, 'Relying party ID and name must be specified in the WebauthnSigner initializer');\n }\n }\n async sign(challenge) {\n const request = {\n challenge: challenge.challenge,\n allowCredentials: challenge.allowCredentials.webauthn,\n rpId: this.conf.relyingParty.id,\n userVerification: challenge.userVerification,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const credential = await react_native_passkey_1.Passkey.get(request);\n return {\n kind: 'Fido2',\n credentialAssertion: {\n credId: credential.id,\n clientData: credential.response.clientDataJSON,\n authenticatorData: credential.response.authenticatorData,\n signature: credential.response.signature,\n userHandle: credential.response.userHandle,\n },\n };\n }\n async create(challenge) {\n const request = {\n challenge: challenge.challenge,\n pubKeyCredParams: challenge.pubKeyCredParams,\n rp: this.conf.relyingParty,\n user: {\n displayName: challenge.user.displayName,\n id: (0, utils_1.toBase64Url)(challenge.user.id),\n name: challenge.user.name,\n },\n attestation: challenge.attestation,\n excludeCredentials: challenge.excludeCredentials?.map((v) => ({\n id: v.id,\n type: v.type,\n })),\n authenticatorSelection: challenge.authenticatorSelection,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const result = await react_native_passkey_1.Passkey.create(request);\n return {\n credentialKind: 'Fido2',\n credentialInfo: {\n credId: result.id,\n attestationData: result.response.attestationObject,\n clientData: result.response.clientDataJSON,\n },\n };\n }\n}\nclass iOSPasskeys {\n constructor(conf) {\n this.conf = conf;\n if (!this.conf?.relyingParty?.id || !this.conf?.relyingParty?.name) {\n throw new sdk_1.DfnsError(-1, 'Relying party ID and name must be specified in the WebauthnSigner initializer');\n }\n }\n async sign(challenge) {\n const request = {\n challenge: challenge.challenge,\n allowCredentials: challenge.allowCredentials.webauthn,\n rpId: this.conf.relyingParty.id,\n userVerification: 'preferred',\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const credential = await react_native_passkey_1.Passkey.get(request);\n return {\n kind: 'Fido2',\n credentialAssertion: {\n credId: credential.id,\n clientData: credential.response.clientDataJSON,\n authenticatorData: credential.response.authenticatorData,\n signature: credential.response.signature,\n userHandle: credential.response.userHandle,\n },\n };\n }\n async create(challenge) {\n const request = {\n challenge: challenge.challenge,\n pubKeyCredParams: challenge.pubKeyCredParams,\n rp: this.conf.relyingParty,\n user: {\n displayName: challenge.user.displayName,\n id: (0, utils_1.toBase64Url)(challenge.user.id),\n name: challenge.user.name,\n },\n attestation: challenge.attestation,\n excludeCredentials: challenge.excludeCredentials,\n authenticatorSelection: challenge.authenticatorSelection,\n timeout: this.conf.timeout ?? exports.DEFAULT_WAIT_TIMEOUT,\n };\n const result = await react_native_passkey_1.Passkey.create(request);\n return {\n credentialKind: 'Fido2',\n credentialInfo: {\n credId: result.id,\n attestationData: result.response.attestationObject,\n clientData: result.response.clientDataJSON,\n },\n };\n }\n}\nclass PasskeysSigner {\n constructor(conf) {\n switch (react_native_1.Platform.OS) {\n case 'android':\n this.platform = new AndroidPasskeys(conf);\n break;\n case 'ios':\n this.platform = new iOSPasskeys(conf);\n break;\n default:\n throw new sdk_1.DfnsError(-1, `${react_native_1.Platform.OS} is not supported`);\n }\n }\n async sign(challenge) {\n return this.platform.sign(challenge);\n }\n async create(challenge) {\n return this.platform.create(challenge);\n }\n}\nexports.PasskeysSigner = PasskeysSigner;\n"],"names":["TRANSACTION_FORMATS","DfnsError","Signature","AbstractSigner","computeAddress","resolveProperties","resolveAddress","getAddress","Transaction","toUtf8Bytes","keccak256","TransactionSigningErrorCode","TransactionStatus","JsonRpcProvider","this","require$$0","ieee754","require$$1","require$$3","fetch_1","types","baseAuthApi_1","require$$2","client","userActionFetch_1","url_1","delegatedClient","auth_1","exchanges_1","feeSponsors_1","keys_1","networks_1","require$$4","permissions_1","require$$5","policies_1","require$$6","signers_1","require$$7","require$$8","wallets_1","require$$9","webhooks_1","require$$10","require$$11","require$$12","require$$13","crypto_1","buffer_1","Platform","NativeModules"],"mappings":"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","x_google_ignoreList":[21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101]}
|