Creates a tool with a schema.
declare function createTool<const Name extends string, Schema extends s.HashbrownType, Result>(input: {
name: Name;
description: string;
schema: Schema;
handler: (input: s.Infer<Schema>, abortSignal: AbortSignal) => Promise<Result>;
}): Chat.Tool<Name, s.Infer<Schema>, Result>;
@param
input
The input for the tool.
{
name: Name;
description: string;
schema: Schema;
handler: (input: s.Infer<Schema>, abortSignal: AbortSignal) => Promise<Result>;
}
@type
Name
string
@type
Schema
s.HashbrownType
@type
Result
@returns
Chat.Tool<Name, s.Infer<Schema>, Result>