import type { AgentTool } from "@threadwell/agent-core";
import { type Static, Type } from "typebox";
import type { ToolDefinition } from "../extensions/types.js";
declare const artifactListSchema: Type.TObject<{
    tool: Type.TOptional<Type.TString>;
    limit: Type.TOptional<Type.TNumber>;
}>;
declare const artifactReadSchema: Type.TObject<{
    id: Type.TString;
    startLine: Type.TOptional<Type.TNumber>;
    maxLines: Type.TOptional<Type.TNumber>;
    tail: Type.TOptional<Type.TBoolean>;
}>;
declare const artifactSearchSchema: Type.TObject<{
    id: Type.TString;
    query: Type.TString;
    maxMatches: Type.TOptional<Type.TNumber>;
    caseSensitive: Type.TOptional<Type.TBoolean>;
}>;
export type ArtifactListToolInput = Static<typeof artifactListSchema>;
export type ArtifactReadToolInput = Static<typeof artifactReadSchema>;
export type ArtifactSearchToolInput = Static<typeof artifactSearchSchema>;
export declare function createArtifactListToolDefinition(cwd: string): ToolDefinition<typeof artifactListSchema>;
export declare function createArtifactReadToolDefinition(cwd: string): ToolDefinition<typeof artifactReadSchema>;
export declare function createArtifactSearchToolDefinition(cwd: string): ToolDefinition<typeof artifactSearchSchema>;
export declare function createArtifactListTool(cwd: string): AgentTool<typeof artifactListSchema>;
export declare function createArtifactReadTool(cwd: string): AgentTool<typeof artifactReadSchema>;
export declare function createArtifactSearchTool(cwd: string): AgentTool<typeof artifactSearchSchema>;
export {};
//# sourceMappingURL=artifact.d.ts.map