import { z } from 'zod';
export declare const SchemaPrimitiveTypeSchema: z.ZodEnum<{
    string: "string";
    number: "number";
    boolean: "boolean";
    object: "object";
    array: "array";
    integer: "integer";
}>;
export type SchemaPrimitiveType = z.infer<typeof SchemaPrimitiveTypeSchema>;
/**
 * Opaque schema definition for tool input/output.
 * This is passed through to CloudFormation without validation.
 */
export interface SchemaDefinition {
    type: SchemaPrimitiveType;
    description?: string;
    items?: SchemaDefinition;
    properties?: Record<string, SchemaDefinition>;
    required?: string[];
}
export declare const SchemaDefinitionSchema: z.ZodType<SchemaDefinition>;
/**
 * Tool name validation for CLI input.
 * Allows alphanumeric characters, hyphens, and underscores.
 * This is a general-purpose schema for tool names that works for both
 * MCP runtime tools (direct) and gateway target tools.
 */
export declare const ToolNameSchema: z.ZodString;
/**
 * Gateway Target Definition schema.
 */
export declare const ToolDefinitionSchema: z.ZodObject<{
    name: z.ZodString;
    description: z.ZodString;
    inputSchema: z.ZodType<SchemaDefinition, unknown, z.core.$ZodTypeInternals<SchemaDefinition, unknown>>;
    outputSchema: z.ZodOptional<z.ZodType<SchemaDefinition, unknown, z.core.$ZodTypeInternals<SchemaDefinition, unknown>>>;
}, z.core.$strict>;
export type ToolDefinition = z.infer<typeof ToolDefinitionSchema>;
/**
 * Top-level MCP definitions file schema (mcp-defs.json).
 */
export declare const AgentCoreCliMcpDefsSchema: z.ZodObject<{
    tools: z.ZodRecord<z.ZodString, z.ZodObject<{
        name: z.ZodString;
        description: z.ZodString;
        inputSchema: z.ZodType<SchemaDefinition, unknown, z.core.$ZodTypeInternals<SchemaDefinition, unknown>>;
        outputSchema: z.ZodOptional<z.ZodType<SchemaDefinition, unknown, z.core.$ZodTypeInternals<SchemaDefinition, unknown>>>;
    }, z.core.$strict>>;
}, z.core.$strip>;
export type AgentCoreCliMcpDefs = z.infer<typeof AgentCoreCliMcpDefsSchema>;
//# sourceMappingURL=mcp-defs.d.ts.map