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

# ToolFunctionDefinition

> Wrapper for a function schema within a tool definition.

# ToolFunctionDefinition

Wraps a [FunctionSchema](/docs/reference/sdk/v2/typescript/types/FunctionSchema) inside a [ToolFunction](/docs/reference/sdk/v2/typescript/types/ToolFunction). Each tool in `deployment.prompt.tools` has a `definition` of this type.

## Import

```typescript theme={null}
import type { ToolFunctionDefinition } from '@adaline/api';
```

## Type Definition

```typescript theme={null}
interface ToolFunctionDefinition {
  schema: FunctionSchema;
}
```

## Fields

<ParamField body="schema" type="FunctionSchema" required>
  The [FunctionSchema](/docs/reference/sdk/v2/typescript/types/FunctionSchema) describing the function's name, description, and parameters.
</ParamField>

***

## Example

```typescript theme={null}
import type { ToolFunctionDefinition, FunctionSchema } from '@adaline/api';

const definition: ToolFunctionDefinition = {
  schema: {
    name: 'search_database',
    description: 'Search internal knowledge base',
    parameters: {
      type: 'object',
      properties: {
        query: { type: 'string', description: 'Search query' },
        limit: { type: 'number', default: 10 }
      },
      required: ['query']
    }
  }
};
```

### Accessing from a deployment

```typescript theme={null}
import { Adaline } from '@adaline/client';

const adaline = new Adaline();
const deployment = await adaline.getLatestDeployment({
  promptId: 'prompt_abc123',
  deploymentEnvironmentId: 'environment_abc123'
});

for (const tool of deployment.prompt.tools) {
  const { name, description } = tool.definition.schema;
  console.log(`${name}: ${description}`);
}
```

***

## Related

* [ToolFunction](/docs/reference/sdk/v2/typescript/types/ToolFunction) — parent type containing `definition`
* [FunctionSchema](/docs/reference/sdk/v2/typescript/types/FunctionSchema) — the schema held by this wrapper
