# Bridge Sdk

This is the sdk for zebec bridge contracts which lets use bridge your transactions from multiple chains to solana via wormhole to utilize the features of zebec streaming and multisig streaming protocol in solana.

This sdk is built on top of [wormhole-sdk](https://www.npmjs.com/package/@certusone/wormhole-sdk) package and requires you to install it to utilize this sdk. Since zebec protocol utilizes the solana's fast transaction processing ability for its streaming services, despite of the transaction payload being originated from various foreign chains that zebec supports or will be supporting in future, the target of the payload for execution will always be in solana.

| Folders/Files  | Description                                                                                         |
| -------------- | --------------------------------------------------------------------------------------------------- |
| evm            | Contains evm contract and client factory classes needed to interact with Zebec Evm bridge contract  |
| solana         | Contains solana contract factory and client classes to interact with Zebec Solana bridge contract   |
| portalTransfer | Contains all the functions for operation of token transfer from EVM chains to Solana and vice versa |
| utils          | Contains all the necessary constants, and other utility functions.                                  |
| parser         | Contains necessary methods and types for parsing wormhole vaa payloads.                             |

This sdk provides you apis to interact with Zebec's stream services such as:

* Vault interaction: Deposit and Withdraw
* Streaming actions: Initialize, update, pause, resume, cancel, withdrawStreamed

as well as some other apis such as:

* RegisterUser
* CreateTokenAccounts
* GetTargetAsset
* TransferEvm
* GetIsRelayCompleted


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.zebec.io/zebec-bridge/bridge-sdk.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
