> For the complete documentation index, see [llms.txt](https://docs.ferra.ag/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ferra.ag/integration/dlmm/typescript-sdk.md).

# Typescript SDK

### Getting Started

* [**Overview**](/integration/dlmm/typescript-sdk/getting-started/overview.md) - Introduction to DLMM protocol and key features for developers
* [**Installation**](/integration/dlmm/typescript-sdk/getting-started/installation.md) - Package installation and setup requirements
* [**SDK Initialization**](/integration/dlmm/typescript-sdk/getting-started/sdk-initialization.md) - Configuration and network setup
* [**Key Concepts**](/integration/dlmm/typescript-sdk/getting-started/key-concepts.md) - Understanding bins, bin steps, and active bins

### Trading Pairs

* [**Create LB Pair**](/integration/dlmm/typescript-sdk/trading-pairs/create-lb-pair.md) - Deploy new liquidity book trading pair
* [**Get Single Pair**](/integration/dlmm/typescript-sdk/trading-pairs/get-single-pair.md) - Fetch detailed pair information
* [**Get All Pairs**](/integration/dlmm/typescript-sdk/trading-pairs/get-all-pairs.md) - List all available trading pairs
* [**Get Pair Bins**](/integration/dlmm/typescript-sdk/trading-pairs/get-pair-bins.md) - Retrieve bin data for a specific pair
* [**Get Pair Reserves**](/integration/dlmm/typescript-sdk/trading-pairs/get-pair-reserves.md) - Check liquidity distribution across bins

### Position Management

* [**Open Position**](/integration/dlmm/typescript-sdk/position-management/open-position.md) - Create new position NFT
* [**Get User Positions**](/integration/dlmm/typescript-sdk/position-management/get-user-positions.md) - List all positions for an address
* [**Get Single Position**](/integration/dlmm/typescript-sdk/position-management/get-single-position.md) - Fetch detailed position data
* [**Get Position Bins**](/integration/dlmm/typescript-sdk/position-management/get-position-bins.md) - View bins within a position
* [**Close Position**](/integration/dlmm/typescript-sdk/position-management/close-position.md) - Remove liquidity and close position

### Add Liquidity

* [**Add Liquidity Overview**](/integration/dlmm/typescript-sdk/add-liquidity/add-liquidity-overview.md) - Core concepts and workflow
* [**Add to New Position**](/integration/dlmm/typescript-sdk/add-liquidity/add-to-new-position.md) - Open position and add liquidity in one transaction
* [**Add to Existing Position**](/integration/dlmm/typescript-sdk/add-liquidity/add-to-existing-position.md) - Add more liquidity to current position
* [**SPOT Distribution**](/integration/dlmm/typescript-sdk/add-liquidity/spot-distribution.md) - Uniform liquidity distribution
* [**CURVE Distribution**](/integration/dlmm/typescript-sdk/add-liquidity/curve-distribution.md) - Gaussian curve distribution
* [**BID-ASK Distribution**](/integration/dlmm/typescript-sdk/add-liquidity/bid-ask-distribution.md) - Weighted bid-ask spread
* [**Custom Distribution**](/integration/dlmm/typescript-sdk/add-liquidity/custom-distribution.md) - Manual bin and amount selection
* [**Calculate Token Amounts**](/integration/dlmm/typescript-sdk/add-liquidity/calculate-token-amounts.md) - Required tokens per bin calculation

### Remove Liquidity

* [**Remove Liquidity Overview**](/integration/dlmm/typescript-sdk/remove-liquidity/remove-liquidity-overview.md) - Understanding the removal process
* [**Remove from Specific Bins**](/integration/dlmm/typescript-sdk/remove-liquidity/remove-from-specific-bins.md) - Partial liquidity removal
* [**Remove All Liquidity**](/integration/dlmm/typescript-sdk/remove-liquidity/remove-all-liquidity.md) - Complete position withdrawal
* [**Calculate Output Amounts**](/integration/dlmm/typescript-sdk/remove-liquidity/calculate-output-amounts.md) - Estimate tokens to receive

### Swap Operations

* [**Execute Swap**](/integration/dlmm/typescript-sdk/swap-operations/execute-swap.md) - Perform token swaps
* [**Swap Direction**](/integration/dlmm/typescript-sdk/swap-operations/swap-direction.md) - Understanding X→Y vs Y→X swaps
* [**Calculate Swap Output**](/integration/dlmm/typescript-sdk/swap-operations/calculate-swap-output.md) - Preview swap results before execution
* [**Price Impact**](/integration/dlmm/typescript-sdk/swap-operations/price-impact.md) - Calculate impact across affected bins
* [**Slippage Protection**](/integration/dlmm/typescript-sdk/swap-operations/slippage-protection.md) - Set minimum output amounts

### Fees & Analytics

* [**Fee Structure**](/integration/dlmm/typescript-sdk/fees-and-analytics/fee-structure.md) - How protocol fees work in bins
* [**Calculate Position Fees**](/integration/dlmm/typescript-sdk/fees-and-analytics/calculate-position-fees.md) - Track accumulated trading fees
* [**Collect Fees**](/integration/dlmm/typescript-sdk/fees-and-analytics/collect-fees.md) - Claim earned fees from positions
* [**Position Value**](/integration/dlmm/typescript-sdk/fees-and-analytics/position-value.md) - Calculate current position worth
* [**Calculate APR**](/integration/dlmm/typescript-sdk/fees-and-analytics/calculate-apr.md) - Estimate annualized returns

### Utilities & Reference

* [**Bin Mathematics**](broken://pages/eU49Cxkv4zu3s7a0AyHJ) - Understanding and Calculations
* [**Price Helpers**](/integration/dlmm/typescript-sdk/utilities-and-reference/price-helpers.md) - Price conversion utilities
* [**Best Practices**](/integration/dlmm/typescript-sdk/utilities-and-reference/best-practices.md) - Performance optimization tips


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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.ferra.ag/integration/dlmm/typescript-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.
