> ## 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: Engine artifacts

> Engine artifacts: the declaration and description of each of the 7 exports of @eco-incorp/sauce/svm/engine-artifacts.

`@eco-incorp/sauce/svm` is the Solana side: the client (`createSauceSvmClient`), clusters, PDAs, account resolution against the compiler's account manifest, Kitchen and engine instructions, transactions and sending, token accounts, and compute planning for `@sauce/router`'s Solana venues. `@eco-incorp/sauce/svm/engine` exports the engine's wire format and instruction builders, `@eco-incorp/sauce/svm/verify` verifies settle programs and engine CPI data, and `@eco-incorp/sauce/svm/engine-artifacts` (Node only) returns file paths to the packaged engine and Kitchen binaries.

```typescript theme={null}
import { createSauceSvmClient, SOLANA_CLUSTERS } from "@eco-incorp/sauce/svm";
```

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

### `svmEnginePath`

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

Absolute path to the engine `.so` for a cluster (default `devnet`): `path` when given, else the
packaged binary. Throws if absent.

```typescript theme={null}
export declare function svmEnginePath(cluster?: EngineCluster, path?: string): string;
```

### `svmKitchenPath`

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

Absolute path to the kitchen program `.so`: `path` when given, else the packaged one. Throws if
absent.

```typescript theme={null}
export declare function svmKitchenPath(path?: string): string;
```

### `svmKitchenIdlPath`

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

Absolute path to the kitchen Anchor IDL JSON: `path` when given, else the packaged one. Throws if
absent.

```typescript theme={null}
export declare function svmKitchenIdlPath(path?: string): string;
```

### `svmEngineArtifacts`

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

The full set a local LiteSVM harness needs to run a kitchen-gated cook, each piece from `paths`
when given and packaged otherwise. Throws if any piece is absent, so a caller gets one clear error
rather than a partial set.

```typescript theme={null}
export declare function svmEngineArtifacts(cluster?: EngineCluster, paths?: SvmEngineArtifactPaths): Required<SvmEngineArtifactPaths>;
```

### `EngineCluster`

*Type* · `@eco-incorp/sauce/svm/engine-artifacts`

```typescript theme={null}
export type EngineCluster = "devnet" | "mainnet";
```

### `SVM_ARTIFACTS_DIR`

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

Directory holding the packaged SVM binaries, resolved relative to this compiled module.

```typescript theme={null}
SVM_ARTIFACTS_DIR: string
```

### `SvmEngineArtifactPaths`

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

Explicit artifact paths, each used instead of the packaged binary it names. An unset field falls
back to the packaged one.

```typescript theme={null}
export interface SvmEngineArtifactPaths {
    engineSo?: string;
    kitchenSo?: string;
    kitchenIdlJson?: string;
}
```


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