Skip to content

PrivacySmartRouter

SIP Protocol API Reference v0.7.4


SIP Protocol API Reference / PrivacySmartRouter

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:21612

SmartRouter for automatic backend selection

Analyzes available backends and selects the optimal one based on user preferences and transfer requirements.

new PrivacySmartRouter(registry): SmartRouter

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:21619

Create a new SmartRouter

PrivacyBackendRegistry

Backend registry to use for selection

SmartRouter

selectBackend(params, config?): Promise<PrivacyBackendSelectionResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:21628

Select the best backend for a transfer

PrivacyTransferParams

Transfer parameters

Partial<PrivacySmartRouterConfig>

Router configuration

Promise<PrivacyBackendSelectionResult>

Selection result with backend and reasoning

Error if no suitable backend is found


execute(params, config?): Promise<PrivacyTransactionResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:21640

Execute a transfer using the best available backend

Includes automatic fallback to alternatives if the primary backend fails (when enableFallback is true). Records success/failure for health tracking.

PrivacyTransferParams

Transfer parameters

Partial<PrivacySmartRouterConfig>

Router configuration

Promise<PrivacyTransactionResult>

Transaction result

AllBackendsFailedError if all backends fail


executeComputation(params, config?): Promise<ComputationResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:21669

Execute a computation using the best available compute backend

Selects from compute-type backends (Arcium, Inco) and executes the computation via MPC/FHE.

ComputationParams

Computation parameters

Partial<PrivacySmartRouterConfig>

Router configuration

Promise<ComputationResult>

Computation result

Error if no compute backend is available or supports the computation

const result = await router.executeComputation({
chain: 'solana',
circuitId: 'private-swap',
encryptedInputs: [encryptedAmount, encryptedPrice],
})

selectComputeBackend(params, config?): Promise<PrivacyBackendSelectionResult>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:21678

Select the best compute backend for a computation

ComputationParams

Computation parameters

Partial<PrivacySmartRouterConfig>

Router configuration

Promise<PrivacyBackendSelectionResult>

Selection result with backend and reasoning

Error if no suitable compute backend is found


getAvailableBackends(params): Promise<object[]>

Defined in: @sip-protocol/sdk/dist/index-DXh2IGkz.d.ts:21685

Get available backends for a transfer (without selecting)

PrivacyTransferParams

Transfer parameters

Promise<object[]>

Array of available backends with scores