import type { StandardSchemaV1 } from "@standard-schema/spec" export namespace Tool { export interface Info< Parameters extends StandardSchemaV1 = StandardSchemaV1, Metadata extends Record = Record, > { id: string description: string parameters: Parameters execute(args: StandardSchemaV1.InferOutput): Promise<{ metadata: Metadata output: string }> } export function define< Parameters extends StandardSchemaV1, Result extends Record, >(input: Info): Info { return input } }