import type { JSONSchema7, JSONSchema7Definition } from 'json-schema';
import { type FunctionSchema, type FunctionParameter, type LibrarySchema, type LibraryConfig } from './types.js';
export declare function createLibrarySchema(functionSchemas: Record<string, FunctionSchema>, config: LibraryConfig): LibrarySchema;
export declare function createParameter(name: string, schema: JSONSchema7, required?: boolean, options?: {
    variadic?: boolean;
}): FunctionParameter;
export declare function createFunctionSchema(name: string, description: string, category: string, parameters: FunctionParameter[], returns: JSONSchema7, options?: {
    examples?: string[];
    since?: string;
    deprecated?: boolean | string;
    tags?: string[];
}): FunctionSchema;
export declare function getFunctionSchema(library: LibrarySchema, functionName: string): FunctionSchema | undefined;
export declare function getAllFunctionNames(library: LibrarySchema): string[];
export declare function getFunctionsByCategory(library: LibrarySchema, category: string): Record<string, FunctionSchema>;
export declare function getFunctionsByTag(library: LibrarySchema, tag: string): Record<string, FunctionSchema>;
export declare function searchFunctions(library: LibrarySchema, query: string): Record<string, FunctionSchema>;
export declare function toJSON(library: LibrarySchema, pretty?: boolean): string;
export declare function mergeLibrarySchemas(libraries: LibrarySchema[], config: LibraryConfig): LibrarySchema;
export declare function validateFunctionSchema(schema: FunctionSchema): string[];
export declare function getTypeStringFromSchema(schema: JSONSchema7Definition): string;
export declare function generateSignature(schema: FunctionSchema): string;
export declare function generateFunctionMarkdown(schema: FunctionSchema): string;
export declare function generateLibraryMarkdown(library: LibrarySchema): string;
//# sourceMappingURL=utils.d.ts.map