> ## 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: gavel

> The gavel Solana venue: the declaration and description of each of the 7 exports of @eco-incorp/sauce/svm.

Solana venue integration `gavel`, exported from `@eco-incorp/sauce/svm`.

Generated from the type declarations of `@eco-incorp/sauce`.

### `GAVEL_PROGRAM_ID`

*Variable* · `@eco-incorp/sauce/svm`

```typescript theme={null}
GAVEL_PROGRAM_ID: Address<"srAMMzfVHVAtgSJc8iH6CfKzuWuUTzLHVCE81QU1rgi">
```

### `GAVEL_POOL_DISCRIMINANT`

*Variable* · `@eco-incorp/sauce/svm`

u64 LE @0 - accounts.rs POOL\_ACCOUNT\_DISCRIMINATOR (\[116,210,187,119,196,196,52,137]).

```typescript theme={null}
GAVEL_POOL_DISCRIMINANT = 9886743430086513268n
```

### `GAVEL_POOL_SIZE`

*Variable* · `@eco-incorp/sauce/svm`

PoolHeader (528) + Amm (96) - bytemuck::Pod, cast at offset 0, no prefix.

```typescript theme={null}
GAVEL_POOL_SIZE = 624
```

### `GAVEL_LEADER_SLOT_WINDOW`

*Variable* · `@eco-incorp/sauce/svm`

processor/swap.rs / lib.rs - the sr-AMM snapshot rotates every 4 slots (\~1.6-2s).

```typescript theme={null}
GAVEL_LEADER_SLOT_WINDOW = 4n
```

### `gavel`

*Variable* · `@eco-incorp/sauce/svm`

The Gavel venue: Ellipsis Labs' sandwich-resistant constant-product AMM.

```typescript theme={null}
gavel: {
    slug: string;
    programId: Address<"srAMMzfVHVAtgSJc8iH6CfKzuWuUTzLHVCE81QU1rgi">;
    tokenProgram: Address<"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA">;
    fetchPoolConfig: typeof fetchGavelConfig;
}
```

### `fetchGavelConfig`

*Function* · `@eco-incorp/sauce/svm`

Fetch + gate one Gavel/Plasma pool: discriminant + size, a live LP-share /
reserve liveness gate (mirrors every other family's "one bad pool never
kills a cook" self-drop), and classic-SPL-only mints (the program's own
token\_program is hardcoded to Tokenkeg - see the module header).

```typescript theme={null}
export declare function fetchGavelConfig(owned: OwnedAccountLoader, pool: Address): Promise<GavelPoolConfig>;
```

### `GavelPoolConfig`

*Interface* · `@eco-incorp/sauce/svm`

```typescript theme={null}
export interface GavelPoolConfig extends PoolConfig {
    venue: typeof SLUG;
    direction: "baseIn" | "quoteIn";
    baseMint: Address;
    quoteMint: Address;
    baseVault: Address;
    quoteVault: Address;
    baseDecimals: number;
    quoteDecimals: number;
    feeInBps: bigint;
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.