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

# recipes: Settle program

> Settle program: 3 exports of the recipes module of @eco-incorp/sauce, including settleSource, SETTLE_SOURCE_PATH, SAUCE_BASE_DIRS.

Shipped programs and the builders that turn them into intents.

```typescript theme={null}
import { buildCctpSplitTransfer, settleSource } from "@eco-incorp/sauce/recipes";
```

This page covers `sdk/dist/recipes/index.d.ts`.

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

### `settleSource`

*Function* · `sdk/dist/recipes/index.d.ts`

The `settle.sauce.ts` program text - sweep the Pot's balance of every listed token to one
recipient, with a minimum-output floor on `tokens[0]`. Read once and cached.

Returned as the raw source (not pre-stripped, not pre-compiled) so a partner can read, hash, or
diff exactly what gets compiled. The compiler's own front-end handles the TypeScript annotations, so
the source needs no pre-processing and no extra option - pass the `CompileOptions` the compiler
package itself exports (`import type { CompileOptions } from "sauce-compiler"`). Deliberately not
restated here: `routes/rs-compile.ts` imports that type for the same reason, since a hand-written
mirror drifts on the next compiler minor with nothing to catch it.

```typescript theme={null}
export declare function settleSource(): string;
```

### `SETTLE_SOURCE_PATH`

*Variable* · `sdk/dist/recipes/index.d.ts`

Absolute path to the `settle.sauce.ts` source inside THIS installed package.

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

### `SAUCE_BASE_DIRS`

*Variable* · `sdk/dist/recipes/index.d.ts`

`baseDirs` for compiling any program in this directory.

One entry is sufficient and it is not this directory: it is the package's dist root, because what
needs resolving is the program's `import { IERC20 } from "./artifacts/IERC20.json"` - which lands
at `<dist>/artifacts/IERC20.json` (vendored from the pinned engine and shipped in this package's
`files` list). Measured: `[distRoot]` alone reproduces the identical bytes.

```typescript theme={null}
SAUCE_BASE_DIRS: readonly string[]
```
