Type Alias BuilderApi<InputType, OutputType, Added, DynamicUnion>
type BuilderApi< InputType extends Record<string, unknown>, OutputType, Added extends keyof InputType, DynamicUnion extends keyof InputType,> = { build: ( ...args: Exclude<DynamicUnion, Added> extends never ? [] : [ build_not_allowed_because_not_all_dynamic_fields_were_specified
: never, ], ) => Exclude<DynamicUnion, Added> extends never ? Tool2Agent<DynamicInputType<InputType, DynamicUnion>, OutputType> : never; field: < FieldName extends Exclude<DynamicUnion, Added>, Requirements extends readonly Exclude<DynamicUnion, FieldName>[], >( key: FieldName, cfg: ToolFieldConfig< InputType, FieldName, Requirements, Exclude<keyof InputType, DynamicUnion | FieldName>, >, ) => BuilderApi<InputType, OutputType, Added | FieldName, DynamicUnion>; spec: ToolSpec<Pick<InputType, DynamicUnion>>;} Type Parameters
- InputType extends Record<string, unknown>
- OutputType
- Added extends keyof InputType
- DynamicUnion extends keyof InputType
Properties
field
field: < FieldName extends Exclude<DynamicUnion, Added>, Requirements extends readonly Exclude<DynamicUnion, FieldName>[],>( key: FieldName, cfg: ToolFieldConfig< InputType, FieldName, Requirements, Exclude<keyof InputType, DynamicUnion | FieldName>, >,) => BuilderApi<InputType, OutputType, Added | FieldName, DynamicUnion>