> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# svm venue: saros-dlmm

> 26 exports of the saros-dlmm venue integration in @eco-incorp/sauce/svm, including SAROS_DLMM_PROGRAM_ID, SAROS_DLMM_PAIR_ACCOUNT_SIZE, BIN_ARRAY_ACCOUNT_SIZE, SAROS_DLMM_PAIR_DISCRIMINATOR, SAROS_DLMM_BIN_ARRAY_DISCRIMINATOR, BINS_PER_ARRAY.

Solana venue integration `saros-dlmm` under `svm/venues/saros-dlmm`.

<Note>
  Generated from the type declarations shipped in `@eco-incorp/sauce` 0.99.4. Each entry shows the package authors' JSDoc and declaration for this SDK version. For runtime compatibility and deployed addresses, see [architecture and deployments](/programmable-transactions/sauce/architecture-and-deployments).
</Note>

### `SAROS_DLMM_PROGRAM_ID`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
SAROS_DLMM_PROGRAM_ID: Address<"1qbkdrr3z4ryLA7pZykqxvxWPoeifcVKo6ZG9CfkvVE">
```

### `SAROS_DLMM_PAIR_ACCOUNT_SIZE`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
PAIR_ACCOUNT_SIZE = 204
```

### `BIN_ARRAY_ACCOUNT_SIZE`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
BIN_ARRAY_ACCOUNT_SIZE = 8248
```

### `SAROS_DLMM_PAIR_DISCRIMINATOR`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

sha256('account:Pair')\[0..8].

```typescript theme={null}
PAIR_DISCRIMINATOR: number[]
```

### `SAROS_DLMM_BIN_ARRAY_DISCRIMINATOR`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

sha256('account:BinArray')\[0..8] - identical to meteora-dlmm's (same type name).

```typescript theme={null}
BIN_ARRAY_DISCRIMINATOR: number[]
```

### `BINS_PER_ARRAY`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
BINS_PER_ARRAY = 256
```

### `CENTER_BIN_ID`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
CENTER_BIN_ID = 8388608
```

### `SAROS_DLMM_MAX_BINS`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

Shipped liquid bins per direction - the meteora-dlmm-style bounded walk,
sized the same as METEORA\_DLMM\_MAX\_BINS pending CU re-measurement against
this family's own compiled ladder (see budget.ts CU\_FAMILIES).

```typescript theme={null}
SAROS_DLMM_MAX_BINS = 8
```

### `OFF_ACTIVE_ID`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_ACTIVE_ID = 127
```

### `OFF_LAST_UPDATE`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_LAST_UPDATE = 131
```

### `OFF_VOLATILITY_ACC`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_VOLATILITY_ACC = 139
```

### `OFF_VOLATILITY_REF`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_VOLATILITY_REF = 143
```

### `OFF_INDEX_REF`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_INDEX_REF = 147
```

### `OFF_BA_INDEX`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_BA_INDEX = 8232
```

### `OFF_BA_BINS`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_BA_BINS = 40
```

### `BIN_LEN`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
BIN_LEN = 32
```

### `OFF_BIN_RESERVE_X`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_BIN_RESERVE_X = 16
```

### `OFF_BIN_RESERVE_Y`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
OFF_BIN_RESERVE_Y = 24
```

### `sarosDlmm`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

Family facade for the recipe orchestrator (ladder-only - no v1 adapter).

```typescript theme={null}
sarosDlmm: {
    slug: string;
    programId: Address<"1qbkdrr3z4ryLA7pZykqxvxWPoeifcVKo6ZG9CfkvVE">;
    tokenProgram: Address<"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA">;
    fetchPoolConfig: typeof fetchSarosDlmmConfig;
}
```

### `pairArrayIndexes`

*Function* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

The two bracketing bin-array indices for `activeId` - matching the real
program's own swap-account convention (cross-validated: the pair chosen
this way is exactly what a real swap accepts, both directions, at every
tested size - see the module header). `lowerIndex < upperIndex` always;
both cover `SAROS_DLMM_MAX_BINS` worth of headroom on either side of
`activeId` (256-bin arrays, an 8-bin walk never needs a third array).

```typescript theme={null}
export declare function pairArrayIndexes(activeId: number): [
    number,
    number
];
```

### `priceFromId`

*Function* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
export declare function priceFromId(binId: number, binStep: number): bigint;
```

### `fetchSarosDlmmConfig`

*Function* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

Fetch + gate one Saros DLMM pair (see the module header for the gate list)
and freeze both directions' bin windows. Read-only against the loader.

```typescript theme={null}
export declare function fetchSarosDlmmConfig(load: AccountLoader, pair: Address): Promise<SarosDlmmPoolConfig>;
```

### `SAROS_DLMM_MEMO_PROGRAM`

*Variable* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
MEMO_PROGRAM: Address<"MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr">
```

### `SarosDlmmBin`

*Interface* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
export interface SarosDlmmBin {
    arrayIndex: 0 | 1;
    offset: number;
    binId: number;
    price: bigint;
}
```

### `SarosDlmmWindow`

*Interface* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
export interface SarosDlmmWindow {
    binArrayLower: Address;
    binArrayUpper: Address;
    lowerIndex: number;
    upperIndex: number;
    bins: SarosDlmmBin[];
}
```

### `SarosDlmmPoolConfig`

*Interface* · `sdk/dist/svm/venues/saros-dlmm/index.d.ts`

```typescript theme={null}
export interface SarosDlmmPoolConfig extends PoolConfig {
    venue: typeof SLUG;
    direction: "xToY" | "yToX";
    tokenXMint: Address;
    tokenYMint: Address;
    vaultX: Address;
    vaultY: Address;
    binStep: number;
    activeId: number;
    baseFactor: number;
    variableFeeControl: number;
    maxVolatilityAccumulator: number;
    reductionFactor: number;
    filterPeriod: number;
    decayPeriod: number;
    windows: {
        xToY: SarosDlmmWindow;
        yToX: SarosDlmmWindow;
    };
}
```
