import { Tool, s } from "bknd/utils";
import { McpSchemaHelper, type McpSchema, type SchemaWithMcpOptions } from "./McpSchemaHelper";
export interface ObjectToolSchemaOptions extends s.IObjectOptions, SchemaWithMcpOptions {
}
export declare class ObjectToolSchema<const P extends s.TProperties = s.TProperties, const O extends ObjectToolSchemaOptions = ObjectToolSchemaOptions> extends s.ObjectSchema<P, O> implements McpSchema {
    constructor(name: string, properties: P, options?: ObjectToolSchemaOptions);
    get mcp(): McpSchemaHelper;
    private toolGet;
    private toolUpdate;
    getTools(node: s.Node<ObjectToolSchema>): Tool<any, any, any>[];
}
export declare const $object: <const P extends s.TProperties = s.TProperties, const O extends ObjectToolSchemaOptions = ObjectToolSchemaOptions>(name: string, properties: P, options?: s.StrictOptions<ObjectToolSchemaOptions, O>) => ObjectToolSchema<P, O> & O;
