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

> 7 exports of the gavel venue integration in @eco-incorp/sauce/svm, including GAVEL_PROGRAM_ID, GAVEL_POOL_DISCRIMINANT, GAVEL_POOL_SIZE, GAVEL_LEADER_SLOT_WINDOW, gavel, fetchGavelConfig.

Solana venue integration `gavel` under `svm/venues/gavel`.

<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>

### `GAVEL_PROGRAM_ID`

*Variable* · `sdk/dist/svm/venues/gavel/index.d.ts`

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

### `GAVEL_POOL_DISCRIMINANT`

*Variable* · `sdk/dist/svm/venues/gavel/index.d.ts`

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* · `sdk/dist/svm/venues/gavel/index.d.ts`

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

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

### `GAVEL_LEADER_SLOT_WINDOW`

*Variable* · `sdk/dist/svm/venues/gavel/index.d.ts`

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* · `sdk/dist/svm/venues/gavel/index.d.ts`

Family facade for the recipe orchestrator (ladder-only - no v1 adapter, not in the v1 registry).

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

### `fetchGavelConfig`

*Function* · `sdk/dist/svm/venues/gavel/index.d.ts`

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(load: AccountLoader, pool: Address): Promise<GavelPoolConfig>;
```

### `GavelPoolConfig`

*Interface* · `sdk/dist/svm/venues/gavel/index.d.ts`

```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;
}
```
